【问题标题】:Symfony2 Doctrine Querybuilder select allSymfony2 Doctrine Querybuilder 全选
【发布时间】:2013-12-31 02:52:36
【问题描述】:

我目前正在研究 SF2 中的一项服务,该服务使用 QueryBuilder 查询数据库,该服务使用类变量集,该类变量在该服务的构造函数中具有特定于存储库的 QueryBuilder。 这意味着我想尽可能多地使用这个集合 QueryBuilder 来获得更整洁的代码和使用它的干净感觉。

我想避免在 EntityManager 上创建查询,而是仅使用此预定义的 Querybuilder 进行查询。

我正在寻找看起来/工作如下的东西:

$query = $this->fooRepository->createQueryBuilder('f')->select('*');
return $query->getResult(Query::HYDRATE_ARRAY);

据我所知,以上将(如果有效)返回数据库中的所有 foo..

如果您认为我很愚蠢并且应该对预定义的 QueryBuilders 做一些不同的事情,或者只是使用:

createQuery()

方法,因为它根本不是好习惯或不可能,请不要犹豫告诉我。

谢谢!

【问题讨论】:

    标签: php symfony doctrine-orm query-builder doctrine-query


    【解决方案1】:

    试试:

    $qb = $this->fooRepository->createQueryBuilder('foo');
    return $qb->getQuery()->getResult(Query::HYDRATE_ARRAY);
    

    不需要选择(*)。由于没有添加 where 子句,因此将选择所有 foo 项。

    【讨论】:

    • 还需要包含多个连接以及这些连接表中的所有列的查询。有什么解决办法吗?
    • 试试看。你可能会感到惊讶。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-10
    • 2016-06-08
    • 1970-01-01
    相关资源
    最近更新 更多