在MySQL中,我想對錶table1
和table2
進行外部連接。MySQL的外部連接以COUNTS爲基礎,日期爲
我想通過code
今天和昨天才分組的相關table2
計數,但我也希望能夠看到其他code
類型的0。這計數是我到目前爲止
SELECT h.code, count(h.code) as count, h.timestamp
FROM table1 h LEFT OUTER JOIN table2 o ON h.code= o.code
GROUP BY h.code
UNION
SELECT h.code, count(h.code) as count, h.timestamp
FROM table1 h RIGHT OUTER JOIN table2 o ON h.code= o.code
GROUP BY h.code
所以我想申請這樣的事情
WHERE h.timestamp >= CURRENT_DATE - INTERVAL 1
但也包括在表1的以0
計數的所有記錄我希望這是有道理的,希望有人能幫助!
首先,你確定你想使用'UNION'而不是'UNION ALL',它不會刪除重複項?另外,爲什麼不使用單個查詢,按天分組,每隔2天? – Kermit
@njk你是對的,但你會需要其中一個查詢是一個反聯盟,如果你做聯盟所有 –
感謝您的意見。問題是可能存在現有的代碼,但過去2天沒有代碼。所以我不能簡單地查詢最近2天。但是在過去的兩天內也可能會有結果,所以我無法在之前和之後加入。我怎麼能申請一個反連接? – neolaser