作者ling123 (白痴啦~)
看板Database
標題Re: [SQL ] 查詢問題
時間Tue Jun 27 10:43:06 2006
剛剛沒看到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)
1F:推 bm1983:感恩~請問第一種方式是指超速或闖紅燈超過一次的人列出嗎ꄠ 06/27 10:49
2F:→ ling123:第一種也是同時有闖紅燈跟超速 06/27 11:01
3F:推 bm1983:喔喔~那是因為加了distinct的關係嗎? 06/27 11:24
4F:→ ling123:對阿 不過一都會用第二種方法 一目了然 06/28 08:16