web-dev-qa-db-fra.com

Passer le tableau à où dans Codeigniter Active Record

J'ai une table dans ma base de données avec adminId et clientId

Il pourrait y avoir 20 enregistrements avec l'administrateur ID de l'utilisateur connecté et j'essaie d'extraire une liste de clients.

Je me demande s'il y a un moyen de dire quelque chose comme:

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

J'essaie de le faire avec des données dynamiques (vous ne savez jamais combien de clients vous aurez besoin d'identifiants). Des idées?

34
Daniel White
$this->db->where_in('id', array('20','15','22','42','86'));

Référence: where_in

74
joHN

Utilisez where_in ()

$ids = array('20', '15', '22', '46', '86');
$this->db->where_in('id', $ids );
17
Stanley

À partir des documents Active Record:

$this->db->where_in();

Génère une requête SQL de champ WHERE IN ('item', 'item') jointe à AND si approprié

$names = array('Frank', 'Todd', 'James');
$this->db->where_in('username', $names);
// Produces: WHERE username IN ('Frank', 'Todd', 'James')
12
Osiris

Génère un champ WHERE dans une requête SQL jointe à AND si nécessaire,

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

Génère un champ WHERE dans une requête SQL jointe avec OR si approprié

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