我有一個名爲capacity_daily_values的表,其中我在兩個方向上存儲國家之間的日常值。加入同一個表兩次以查找缺失的數據
表的模式是這樣的:
id | direction | date_id | value
我需要有一個日期兩行表中的兩個方向。這樣的:
1 | 1 | 2015-01-01 | 1.00
2 | 2 | 2015-01-01 | 1.00
不幸的是一些數據丟失,我有隻值兩個方向之一,我需要找出哪些日期爲損壞。
我試着左連接兩個表,看看哪個結果有NULL值,但沒有成功。
SELECT * FROM `capacity_daily_values` c1
LEFT JOIN capacity_daily_values c2
on c1.date_id = c2.date_id and c1.direction = 1 and c2.direction = 2
having value is null
我感謝您的幫助!
乍一看,LEFT JOIN解決方案(通過e4c5)在性能方面明顯優於我。 GROUP BY解決方案(由Roman Hocke提供)。我推薦其中之一。 – TheHowlingHoaschd