表A中的位置,但CodeIgniter中不是B.

时间:2014-10-02 19:01:32

标签: php mysql sql database codeigniter

我正在使用codeigniters sql选择来选择不在一组id中的用户。

$this->db->select('fbuid')->where_in('fbuid', $friends);
$query   = $this->db->get('users');

我正在尝试添加另一个子句来检查而不是在friends表(id列)中。我试图添加使用

$this->db-where_not_in

但我似乎无法让它发挥作用

这是一个伪代码sql语句

SELECT fbuid FROM users WHERE IN () BUT NOT IN the friends TABLE ID COLUMN

1 个答案:

答案 0 :(得分:0)

试试这个:

$query = $this->db->select('fbuid')
         ->from('users')
         ->where_in('fbuid', $friends)
         ->where_not_in('fbuid', $otherFriends);

修改

您可以先创建子查询并将其存储在数组中,也可以一步完成:

$query = $this->db->select('fbuid')
             ->from('users')
             ->where_in('fbuid', $friends)
             ->where('`fbuid` NOT IN (SELECT `uid` FROM `another_table`)', NULL, FALSE);

NULL,FALSE很重要。