0

1 つの列の値に基づいて複数の行を選択する 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 に答える