我正試圖從我的數據庫中獲得足夠牀位的酒店(用戶指定客人計數參數)。查詢應該看起來像這樣:Doctrine2帶SUM的QueryBuilder子查詢?
SELECT h.* FROM Hotel AS h
WHERE
(SELECT SUM(r.guestCount * r.count)
FROM Room AS r
WHERE r.hotel_id = h.id) >= $questCount
上述查詢包含where子句中的子查詢。我讀過doctrine的QueryBuilder文檔,我不知道如何在QB中創建子查詢。
所有我現在是:
$qb = $this->getDoctrine()->getEntityManager()->createQueryBuilder()
->select('h')
->from('AAAHotelsBundle:Hotel', 'h')
->where(.........???...........);
任何想法下一步該怎麼做?
當然我簡化了這個問題(查詢本身更復雜)。我使用Symfony2。