首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无法在mysql中选择带有"WHERE s_id in ($array)“的项

无法在mysql中选择带有"WHERE s_id in ($array)“的项
EN

Stack Overflow用户
提问于 2012-10-26 03:43:14
回答 3查看 120关注 0票数 0

这就是我的问题所在,我有两个表,一个是连接(一列-团队id,其他人id),我找到来自一个确切团队的所有人员id(这里是't1')并将其放入一个数组中,这里一切正常。

代码语言:javascript
运行
复制
$id1 = mysql_query("SELECT id FROM connections WHERE team='t1'");
$id11 = array();
while(($row =  mysql_fetch_assoc($id1))) {
    $id11[] = $row;
}

echo "";
print_r($id11);
echo "";

到这里为止,一切都很好,在print_r中,我看到了我想看到的数组的项。但从这里便会产生排泄物。我想从‘person’表中选择人名,该表的id来自上一个数组($id11)。最后,我得到一个空数组。

代码语言:javascript
运行
复制
$kom1 = mysql_query("SELECT name FROM persons WHERE s_id IN('".join("','", $id11)."')");


//$kom1 = mysql_query("SELECT name FROM persons WHERE s_id IN(".implode(',',$id11).')'); //this one doesnt work too
$kom11 = array();
while(($row1 =  mysql_fetch_assoc($kom1))) {
$kom11[] = $row1;
}

echo "";
print_r($kom11);
echo "";

试过了,请帮帮我,谢谢。

EN

Stack Overflow用户

回答已采纳

发布于 2012-10-26 03:47:41

在第二个查询中直接使用子查询:

代码语言:javascript
运行
复制
SELECT * FROM blah WHERE boing IN (SELECT id FROM blah2 WHERE team=1337)

应该在每个不那么花哨的数据库中工作

票数 1
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13076017

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档