我有一个id数组,我必须从表中为数组的每个值选择,我可以在for loop
逐个获取它,
SELECT point, privacy FROM `tableName` WHERE id='1403176452487620892'and status=1
但问题是数组大小为100,我需要一个不是100的查询。
答案 0 :(得分:2)
为什么你不能使用:
SELECT point, privacy FROM `tableName` WHERE status=1 and id in(?,?,?...)
是的,这太长了,但是如果你需要一个查询......
答案 1 :(得分:1)
您可以这样使用:
$ids = join(',',$ids);
$sql = "SELECT * FROM tableName WHERE id IN ($ids)";
答案 2 :(得分:0)
您可以尝试这样
$array = array(1,2,3);
$str = implode(",", $array);
$sql = "SELECT point, privacy FROM `tableName` WHERE id in ($str) and status=1";