phalcon使用model搜索时如果实现distinct功能?

想使用phalcon从数据库select到一个数量很多而且大部分数值重复的字段,如果直接搜索很可能会超过php限制的内存上限,我还不想改php.ini.
用mysql就直接加distinct了,那用phalcon该怎么办呢?

阅读 3.5k
1 个回答

使用构建器:

先搞个基础:

$queryBuilder = $this->getDI()->getModelsManager()
    ->createBuilder()
    ->addFrom('tableName', 't');

直接用Distinct:

$queryBuilder->distinct('t.id');

用列方法也可以, 不推荐:

$queryBuilder->columns('DISTINCT(t.id) AS id')

使用严格模型:

// we are waiting for it, but may still not be implemented
TableModel::find(array('distinct' => 'id'))
For count:

TableModel::count(array("distinct" => "id"));
And less recommended way according to previous answer:

TableModel::find(array('columns' => 'distinct(id)'))

抄袭自so
https://stackoverflow.com/a/3...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题