我想创建一个SQL SELECT语句,根据一列的值选择多行,但我有一个与要选择的行匹配的有效值列表。
具体来说,我有一个用户ID列表。我想为这个列表中每个有用户id的行选择整行(这个列表是用PHP编写的,我也在那里进行SQL调用)。
到目前为止,我的代码如下:
$list_of_ids = array(1, 5, 7, 23);//list of user ids I want to select.
$query = sprintf("SELECT * FROM users WHERE user_id=?????", ????);
我该怎么做?
$ids = implode(',',$list_of_ids);
$query = sprintf("SELECT * FROM users where user_id in ($ids)");
将数组转换为逗号分隔的字符串,如下所示:
$list_of_ids = array(1, 5, 7, 23);
$out = implode(",", $list_of_ids) ;
$query = sprintf("SELECT * FROM users WHERE user_id in =(".$out.")");