看板 Database 關於我們 聯絡資訊
select t1.STARTDATE + ' - ' + t1.ENDDATE + ' ' + t1.STARTTIME + ' - ' + t1.ENDTIME from A t1 inner join B t2 on t2.STARTDATE + t2.STARTTIME between t1.STARTDATE + t1.STARTTIME and t1.ENDDATE + t1.ENDTIME and t2.ENDDATE + t2.ENDTIME between t1.STARTDATE + t1.STARTTIME and t1.ENDDATE + t1.ENDTIME group by t1.STARTDATE,t1.STARTTIME,t1.ENDDATE,t1.ENDTIME,t2.STARTDATE ps. 如果 table A 遇到凌晨整點答案可能會錯: Ex: 2015-11-12 08:00 2015-11-13 00:00 (X) Ex: 2015-11-12 08:00 2015-11-12 24:00 (O) ※ 引述《bernachom (Terry)》之銘言: : 資料庫名稱:MS 2008R2 : 資料庫版本: 2008R2 : 內容/問題描述: : 不好意思,最近處理比較多SQL上的問題,頭腦都有點打結了。 : 我有一個主檔 : TABLE A : 裡面有時間欄位如下: : STARTDATE STARTTIME ENDDATE ENDTIME : 2015-11-12 08:00 2015-11-13 17:00 : 然後還有一個明細欄位 : TABLE B,裡面就會記錄每個小時的拆解 : STARTDATE STARTTIME ENDDATE ENDTIME : 2015-11-12 08:00 2015-11-12 09:00 : 2015-11-12 09:00 2015-11-12 10:00 : . : . : . : . : 2015-11-13 16:00 2015-11-13 17:00 : 請教一下,我該如何做才能顯示 : [2015-11-12 - 2015-11-13 08:00 - 17:00] : 重複顯示2次呢? : 因為他有兩天 12和13 : 假設,日期是12號到16號,就會顯示5次 : ,組了半天,組到頭腦打結了,還麻煩指導了,謝謝幫忙。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.221.80.36 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1447734984.A.EF2.html ※ 編輯: cutekid (61.221.80.36), 11/17/2015 13:19:03