$qb = $this->createQueryBuilder('t');
return $qb
->join('t.customers', 'c')
->where($qb->expr()->eq('t.user', $user->getId()))
->andWhere($qb->expr()->gt($qb->expr()->count('c'), 0))
->orderBy('t.name')->getQuery()->getResult();
上面的查詢使用GROUP(Doctrine2產生的一個)是給我這個錯誤:獲得「#1111 - 無效使用組功能的」沒有在MySQL
#1111 - Invalid use of group function
,但奇怪的是我」 m不使用GROUP BY
。任何幫助非常感謝,謝謝。
SELECT t0_.id AS id0,
t0_.slug AS slug1,
t0_.name AS name2,
t0_.description AS description3,
t0_.user_id AS user_id4
FROM tag t0_
INNER JOIN customers_tags c2_ ON t0_.id = c2_.tag_id
INNER JOIN customer c1_ ON c1_.id = c2_.customer_id
WHERE t0_.user_id = 1 AND COUNT(c1_.id) > 0
ORDER BY t0_.name ASC
先生,你讓我一天都行。自24小時以來一直苦苦掙扎,對數組集合(數組集合中的指定項目或數組集合的大小爲0)進行雙重檢查,這種方法完美無缺。 – YumeYume 2017-01-13 08:46:04
這應該是被接受的答案:) – 2018-01-25 20:29:17