0

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

我该怎么做呢?

4

2 回答 2

4
$ids = implode(',',$list_of_ids);
$query = sprintf("SELECT * FROM users where user_id in ($ids)");
于 2013-08-12T18:35:56.913 回答
1

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

  $list_of_ids = array(1, 5, 7, 23);
  $out = implode(",", $list_of_ids) ;
  $query = sprintf("SELECT * FROM users WHERE user_id in =(".$out.")");
于 2013-08-12T18:36:34.243 回答