看板 Database 關於我們 聯絡資訊
剛剛沒看到Table Schema 如果已經知道代號 那應該用不到FINE 所以變成 Select 牌照號碼 from VIOLATION where 違規代號 in('vip001','vip007') Group by 牌照號碼 having count(distinct 違規代號)=2 或 Select distinct 牌照號碼 from VIOLATION a Join VIOLATION b on a.牌照號碼=b.牌照號碼 where a.違規代號='vip001' and b.違規代號='vip007' ※ 引述《bm1983 (#2 16個耳洞喪禮之前)》之銘言: : 在同一張資料表裡我查了 : select distinct 牌照號碼 : from dbo.violation,dbo.fine : where dbo.violation.違規代號 = dbo.fine.違規代號 : and 違規項目 ='闖紅燈' : order by 牌照號碼 : 結果為 : VIP001 : VIP003 : VIP007 : VIP011 : VIP013 : VIP015 : VIP019 : 我又查了 : select 牌照號碼 : from dbo.violation,dbo.fine : where dbo.violation.違規代號 = dbo.fine.違規代號 : and 違規項目 ='超速' : order by 牌照號碼 : 結果為 : VIP001 : VIP006 : VIP007 : VIP008 : VIP009 : 如果我想要查又超速又闖紅燈的人(vip001和vip007) : 請問應該要怎麼寫查詢? : 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.66.215.100 ※ 編輯: ling123 來自: 203.66.215.100 (06/27 10:51) ※ 編輯: ling123 來自: 203.66.215.100 (06/27 10:54)
bm1983:感恩~請問第一種方式是指超速或闖紅燈超過一次的人列出嗎ꄠ 06/27 10:49
ling123:第一種也是同時有闖紅燈跟超速 06/27 11:01
bm1983:喔喔~那是因為加了distinct的關係嗎? 06/27 11:24
ling123:對阿 不過一都會用第二種方法 一目了然 06/28 08:16