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();

生成一个 WHERE 字段 IN ('item', 'item') SQL 查询,如果合适,用 AND 连接

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

生成一个 WHERE 字段 IN ('item', 'item') SQL 查询,如果合适,用 AND 连接,

$this->db->where_in()
ex :  $this->db->where_in('id', array('1','2','3'));

生成一个 WHERE 字段 IN ('item', 'item') SQL 查询,如果合适,用 OR 连接

$this->db->or_where_in()
ex :  $this->db->where_in('id', array('1','2','3'));
于 2017-06-07T11:45:19.717 回答