0
我試圖在下面的查詢中添加表t4的計數,但不限制結果。 喜歡的東西:MySQL左連接表中的行數
COUNT(t4.offer_to_purchase_id) AS count
但這種限制的結果,只有那些出現在T4服務,儘管左邊的加入
$sql = "SELECT s.*, q.categories, t4.*, payments.*, quotes.*
FROM services s
LEFT JOIN
(
SELECT sc.service_id, GROUP_CONCAT(c.name) categories
FROM services_categories sc JOIN categories c
ON sc.cat_id= c.cat_id
GROUP BY sc.service_id
) q ON s.service_id = q.service_id
LEFT JOIN offers_to_purchase t4
ON s.service_id = t4.service_id
LEFT JOIN quotes ON quotes.service_id = s.service_id
LEFT JOIN payments ON payments.service_id = s.service_id
WHERE s.user_id = $user_id";
我怎樣才能做到這一點?
+1 - 我同意@Kickstart的關鍵點您需要使用包含GROUP BY的SELECT第二個LEFT JOIN到offering_to_purchase表,以便能夠檢索COUNT。想知道這是否會工作,以及:AS id_count WHERE offer_to_purchase_id IS NOT NULL GROUP BY service_id' – linguanerd
左外連接'SELECT COUNT(*)FROM offers_to_purchase似乎已經奏效三江源,我只需要在添加GROUP BY s.service_id查詢結束。一個用戶ID可以有幾個服務,每個服務都沒有,一個或幾個要約購買 - 只返回與該服務相關的在t4中購買的要約,而不是所有記錄 – whispersan