我有一维数组$ abc。
$abc = array (90, 91, 92, 93, 94, 95, 96, 97, 98, 99);
我想在WHERE IN中使用它
SELECT *
FROM table
WHERE columnA IN ()
while (){
$def[] = $row['def'];
}
当我使用简单的IN('$ abc')时,我有一个响应 - 未定义的变量:def
如何正确地做到这一点?
答案 0 :(得分:2)
您可以使用implode()
功能:
$abc = array (90, 91, 92, 93, 94, 95, 96, 97, 98, 99);
$str = implode(',', $abc);
现在,您可以在$str
子句中使用IN
。
详细了解implode()
功能。
答案 1 :(得分:0)
implode让您轻松
$query='SELECT *
FROM table
WHERE columnA IN ('.implode(',', $abc).')';
答案 2 :(得分:0)
尝试:
$abc = array (90, 91, 92, 93, 94, 95, 96, 97, 98, 99);
$imploded = implode(",", $abc);
//then your query
SELECT *
FROM table
WHERE columnA IN ($imploded)
希望有所帮助