我正在努力與以下SQL: 我有一個表有一個站點的site_id和referrer域。我只是簡單地計算引薦來源和網站的出現次數,然後計算一個網站的所有引薦來源的總數。MySQL:計數和總計爲兩個不同的分組
在我的結果下面的計數和網站總數不正確。計數應該是一半,例如對於網站ID 1,谷歌和亞馬遜的數量應該是10,而站點ID 2的總數應該是18. 任何想法我可能做錯了什麼?
SELECT site_id, I.referrer_domain AS referrer_domain, COUNT(*) AS items, t.site_total
FROM qVisitor_Tracking_1 as I,
(SELECT COUNT(1) AS site_total
FROM `qVisitor_Tracking_1`
WHERE `referrer_domain` != '' group by site_id) AS T
WHERE `referrer_domain` != ''
GROUP BY `site_id`, referrer_domain
site_id referrer count site total
1 amazon 20 24
1 google 20 24
2 amazon 12 24
2 google 18 24
這可以b e實現使用子查詢,但sql的性能應該很慢。爲什麼你不試圖使用兩個不同的查詢而不是單個查詢? – Mosiur