J'essaie de créer la déclaration suivante:
select * from donors where field is NOT NULL;
Avec codeigniter, mon code ressemble à ceci:
$where = ['field' => NULL];
$this->db->get_where('table', $where);
quand vous voyez documentation Vous pouvez utiliser $this->db->where()
avec le troisième paramètre défini sur FALSE pour ne pas échapper à votre requête. Exemple:
$this->db->where('field is NOT NULL', NULL, FALSE);
Ou vous pouvez utiliser une chaîne de requête personnalisée comme celle-ci
$where = "field is NOT NULL";
$this->db->where($where);
Ainsi, votre générateur de requêtes ressemblera à ceci:
$this->db->select('*');
$this->db->where('field is NOT NULL', NULL, FALSE);
$this->db->get('donors');
OR
$this->db->select('*');
$where = "field is NOT NULL";
$this->db->where($where);
$this->db->get('donors');
Essaye ça:
$this -> db -> get_where('donors', array('field !=' => NULL));
Si vous avez une requête complexe avec plusieurs conditions Where et Ayant.
Veuillez trouver l'exemple ci-dessous:
$this->db->select(['id', 'email_address', 'abandon_at','datediff(now(),`abandon_at`) AS daysdiff ' ]);
$this->db->having('daysdiff < 11');
$query = $this->db->get_where('forms', array('abandon_form' => 1,'abandon_at !=' => 'NULL') );
return $query->result();
Essaye ça:
$this->db->where('columnName !=', null);