一个Select语句,用于具有多个值的一列的条件

时间:2013-08-12 18:33:25

标签: php mysql sql select

我想创建一个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=?????", ????);

我该怎么做?

2 个答案:

答案 0 :(得分:4)

$ids = implode(',',$list_of_ids);
$query = sprintf("SELECT * FROM users where user_id in ($ids)");

答案 1 :(得分:1)

以逗号分隔的字符串转换数组,如下所示:

  $list_of_ids = array(1, 5, 7, 23);
  $out = implode(",", $list_of_ids) ;
  $query = sprintf("SELECT * FROM users WHERE user_id in =(".$out.")");