【问题标题】:Phalcon How to do SELECT not in with SUB QUERY in query manager?Phalcon 如何在查询管理器中使用 SUB QUERY 执行 SELECT?
【发布时间】:2015-12-11 02:35:12
【问题描述】:

我想知道如何在 phalcon 中使用 select not in 作为子查询

例如,我知道我可以使用以下方法对数组值执行 notIn。

return User::query()
               ->where(" gender!=:gender: ", array('gender' => $gender))
               ->andWhere(" verify=1 ")
               ->notInWhere('user_id', "SELECT user_id FROM user_bannned WHERE user_id=:user_id:" )
               ->order(" last_visit DESC ")
               ->limit($limit)
               ->execute();

问题是

“SELECT user_id FROM user_bannned WHERE user_id=:user_id:”

我该怎么做 带有模型查询管理器的子查询?

有什么想法吗?或解决方法?

【问题讨论】:

标签: mysql model-view-controller phalcon


【解决方案1】:

你的问题到底是什么?

做同样的事情:

$this->modelsManager->createBuilder()
    ->from(['User'=>'User Namespace'])
    ->where("gender != :gender:,array('gender'=>$gender))
    ->andWhere("verify=1")
    ->notInWhere('user_id', "SELECT user_id FROM user_banned WHERE user_id = :user_id:")
    ->order("last_visit DESC")
    ->limit($limit)
    ->getQuery()
    ->execute();

就是这样。

【讨论】:

  • 我得到一个错误 Phalcon\Mvc\Model\Criteria::notInWhere() must be of the type array, string given, called in
猜你喜欢
  • 1970-01-01
  • 2016-07-02
  • 2014-09-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-03
  • 1970-01-01
  • 2014-07-31
相关资源
最近更新 更多