我可以在mysql select中放一个数组吗?
$usersArray = array(34, 23, 17, 17, 56);
$result = mysql_query("SELECT * FROM users WHERE user_id=$usersArray");
我能这样做吗?
答案 0 :(得分:2)
没有。我相信你应该这样做:
$result = mysql_query("SELECT * FROM users WHERE user_id IN (" . implode(', ', $usersArray) . ")");
答案 1 :(得分:0)
$usersArray = array(34, 23, 17, 17, 56);
$result = mysql_query("SELECT * FROM users WHERE user_id in (".
implode(",",$usersArray).
")");
这是不安全的,就像将sql参数作为连接字符串放置一样。但是你得到了一般的想法。
答案 2 :(得分:0)
尝试:
$usersArray = array(34, 23, 17, 17, 56);
$usersIn = implode(",",$usersArray);
$result = mysql_query("SELECT * FROM users WHERE user_id in($usersIn)");
“in”将user_id与括号内逗号分隔列表中的任何条目进行比较。