Phalcon - 如何使用Phalcon模型进行SELECT IN子查询?

时间:2015-11-18 06:07:00

标签: php mysql model-view-controller phalcon

我需要知道如何使用phalcon模型进行子查询类型选择?

例如,我想选择查看我的所有用户,它们存储在UserView表中,其列为'id','user_from','user_to'(由User table user_id映射到user_from或user_to)

所以我想选择所有拥有user_to的用户和当前用户一样,并按user_to分组以确保我只记录一次,我写下这个函数来做这个但是有两个基本问题

1。如何使用phalcon模型进行子查询

2。我的逻辑是否正确应用于数据库的后端(因为我看不到真正执行的查询)

public function getUserWithViewedMe($limit=1000000){
        return  User::query()
            ->rightJoin("XYZ\Models\UsersView")
            ->andWhere(" XYZ\Models\UsersView.user_from IN :user_id: ",
                              array('user_id' => $this->user->user_id) )
            ->group('user_id')
            ->order("XYZ\Models\UsersView.id DESC ")
            ->limit($limit)
            ->execute();
    } 

返回空集......

1 个答案:

答案 0 :(得分:1)

到目前为止,无法在Phalcon中对子查询进行建模。根据标准实施问题,还有topic

根据其他表格here is an answer查询参数。

要查询IN,您可以使用queryBuilder

$this->modelsManager->createBuilder()
    // ...
    ->inWhere('column', $array);