【问题标题】:Creat not query in CakePhp在 CakePhp 中创建不查询
【发布时间】:2014-04-01 09:41:03
【问题描述】:

如何在 CakePhp 中进行此查询?

从 id 不在的用户中选择 id(从 user_details 中选择 userid ud join users u ON u.id=ud.userid AND ud.name ='fullname');

【问题讨论】:

    标签: cakephp


    【解决方案1】:

    最简单的方法。但不是原生 cakephp,总是尝试使用 find() 方法。

    $this->User->Query("select id from users where id not in (select userid from user_details ud join users u ON u.id=ud.userid AND ud.name ='fullname')");
    

    【讨论】:

      【解决方案2】:

      要获得您必须执行的确切查询:

      $this->User->find(
          'all',
          array(
              'fields' => array('User.id'),
              'conditions' => array('id NOT IN (select userid from user_details ud join users u ON u.id=ud.userid AND ud.name ='fullname')' 
          );
      

      但你可以简单地实现相同的结果

      $this->User->find(
          'all',
          array(
              'fields' => array('User.id'),
              'conditions' => array('UserDetail.name !=' => 'fullname'),
              'contain' => array('UserDetail')
          );
      

      假设您的User 模型与UserDetail 建立关系(hasOne?)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-01-09
        • 1970-01-01
        • 1970-01-01
        • 2016-01-26
        • 2012-02-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多