我一直在研究這個問題一段時間了,我似乎無法找到解決方案,希望這裏有人可以提供幫助。交叉的日期
目前我正在與微軟SQL服務器的管理工作,我一直在努力做到以下幾點:
以前,舊的查詢將只返回適合兩個日期 繼承人的以前的查詢的結果:在所述查詢後產生
SELECT e.Name, o.StartDate, o.EndDate
FROM dbo.Name e, dbo.Date o
WHERE
where e.Name = o.Name
and o.StartDate <= '2010-09-28 23:59:59'
and o.EndDate >= '2010-9-28 00:00:00'
and e.Name like 'A'
實施例表運行(真正的表具有明顯更大量的行:P):
Name Start End
A 2010-09-28 07:00:00 2010-09-28 17:00:00
A 2010-09-28 13:45:00 2010-09-28 18:00:00
A 2010-09-28 08:00:00 2010-09-28 16:00:00
A 2010-09-28 07:00:00 2010-09-28 15:30:00
但是我們需要改變這一點,以便查詢執行以下操作:
發現相交的天× 日期查找不相交的一天的日期X
我發現一個真正有用的網站 http://bloggingabout.net/blogs/egiardina/archive/2008/01/30/check-intersection-of-two-date-ranges-in-sql.aspx 然而,輸入比較日期,我的另一方面必須相交/不相交的所有日期。
感謝大家的幫助。
非常感謝你的朋友,這真的很有幫助,但很簡單 – ChickSentMeHighE 2010-06-16 14:17:12