我正在努力處理一個查詢。如何檢查sql server中的相關表中的每條記錄
我有三個表 不同之處:可以有一個以上的措施 measure_sources:偏差的關係表和測量 措施
在這裏,我要覈對一下就有關偏差 due_at>的currentdate一切措施:應可見 due_at <的currentdate:未示出
偏差表
id name
1 abc
2 def
個
措施源表
id element_id measure_id
1 1 1
2 1 2
3 1 3
4 2 1
5 2 2
措施表
id due_at
1 2015-10-14
2 2015-12-30
3 2016-11-30
預期的結果
id
2
目前我使用下面的查詢,但我得到的是不應該來的偏差
SELECT d.id FROM deviations d
LEFT JOIN measure_sources ms ON ms.element_id = d.id
LEFT JOIN measures m ON ms.measure_id = m.id
WHERE (m.due_at > '2016-08-15' OR m.due_at is null)
但目前我得到1和2都爲結果 請建議我在哪裏錯了
感謝
Sam數據和期望的結果將有所幫助。 –
請提供您的樣品數據。請 – Noman
既然你不提供有用的信息,我們只能猜測。例如,您使用Measure_sources連接表Devations,並且您加入的表measure_sources中的鍵稱爲element_id。你確定這是正確的嗎?我期望表measure_sources中的一個名爲deviationID的域以 – GuidoG