39

データベースに adminId と clientId を持つテーブルがあります

ログインしたユーザーの adminId を持つ 20 のレコードがある可能性があり、クライアントのリストを取得しようとしています。

私は次のようなことを言うことができる方法があるかどうか疑問に思っています:

$this->db->where('id', '20 || 15 || 22 || 46 || 86');

私は動的データでこれをやろうとしています (プルする必要があるクライアント ID の数はわかりません)。何か案は?

4

4 に答える 4

96
$this->db->where_in('id', ['20','15','22','42','86']);

参考:where_in

于 2012-12-05T06:36:27.883 に答える
18

where_in()を使用する

$ids = array('20', '15', '22', '46', '86');
$this->db->where_in('id', $ids );
于 2012-12-05T06:34:17.067 に答える
12

Active Record ドキュメントから:

$this->db->where_in();

必要に応じて AND で結合された WHERE フィールド IN ('item', 'item') SQL クエリを生成します

$names = array('Frank', 'Todd', 'James');
$this->db->where_in('username', $names);
// Produces: WHERE username IN ('Frank', 'Todd', 'James')
于 2012-12-05T06:34:52.127 に答える