[SQL ] 時間分段問題

看板Database作者 (小布)時間15年前 (2008/10/19 13:33), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
現有兩table TABLE_A ----------------- ZoneID ZoneName 1 甲地 2 乙地 3 丙地 TABLE_B ----------------- Type Time ZoneID Key 1 10:10 1 001 2 10:11 2 002 1 13:11 3 003 2 11:50 1 004 2 13:55 1 005 需要產生的結果 Temp_Table ------------------------------------------------- 08:00~10:00 10:00~12:00 12:00~14:00 ZoneName Type1 Type2 Type1 Type2 Type1 Type2 甲地 0 0 1 1 0 1 乙地 0 0 0 1 0 0 丙地 0 0 0 0 1 0 目前想到的方法是: SELECT ZoneName, COUNT(CASE Type WHEN '1' THEN '1') AS Type1, COUNT(CASE Type WHNE '2' THNE '2') AS Type2 FROM TABLE_A LEFT JOIN TABLE_B ON TABLE_A.ZoneID = TABLE_B.ZoneID WHERE TABLE_B Time BETWEEN '08:00' AND '10:00' GROUP BY ZoneName UNION SELCT ZoneNAME , 0 AS Type1, 0 AS Type2 FROM TABLE_A 可是這段指令查詢出來的結果只能指定一個區段,如果需要產生像Temp_Talbe這樣的結果 請問該怎麼修正我的查詢指令呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.183.1
文章代碼(AID): #18-iQZSn (Database)