我有2個表:MySQL的權限使用組參加由問題
LandingPages - 包含每個廣告系列着陸頁。
報告 - 包含命中和每個着陸頁轉換。
我試圖做的查詢帶來點擊和每個着陸頁轉換的總和,
但我想,如果登陸頁面沒有收到任何點擊和轉換(並沒有表現出報告表)然後我希望返回0作爲結果。
我做什麼,到現在爲止是:
SELECT l.LandingPageId, SUM(Hits) AS Hits, SUM(PixelSum) AS Conversion
FROM Report c
RIGHT JOIN LandingPages l ON(c.LandingPageId = l.LandingPageId)
WHERE c.CampaignId = x
AND DayDate > 'y'
GROUP BY c.LandingPageId
的問題是,我只得到與着陸頁中存在的報告表,並通過日期「Y」行,
(如:我只得到2行着陸頁的,但有4着陸頁
如果我運行此查詢我得到4個結果
SELECT l.LandingPageId FROM LandingPages l WHERE l.CampaignId = x
)
不是所有着陸頁(0值),
我怎樣才能得到這個工作,像我想,你也給我的着陸頁,並非報告表或表,但在舊日期?
謝謝。
更新:
我幫了很多關於你的答案,我得到的工作對我來說只是如果不是在報告表中所有存在的着陸頁部分解決方案,但如果它是存在的,但日期條款不與之匹敵不會出現:
的部分解決方案查詢:
SELECT l.LandingPageId, IFNULL(SUM(Hits),0) AS Hits, IFNULL(SUM(PixelSum),0) AS Conversion
FROM LandingPages l
LEFT JOIN Report c ON(l.LandingPageId = c.LandingPageId)
WHERE (l.CampaignId = x OR l.CampaignId IS NULL)
AND (DayDate > 'y' OR DayDate IS NULL)
GROUP BY l.LandingPageId
我還需要你的幫助!
謝謝!
您可以顯示某個廣告系列的兩個表格的內容嗎?如果你不做GROUP BY,你會得到多少行?你應該得到4.請記住,你做出了總和。 – hol 2010-07-28 13:36:27
報告表包含數千次活動線的,因爲,我不把這個 – 2010-07-28 13:52:08
如果於爾根Hollfelder表的創建是正確的,你可以請打印出你所期望的結果表提供什麼呢?謝謝。 – Frankie 2010-08-06 04:12:01