2015-06-03 28 views
1

我想寫一個查詢,將列出一個表中的列時,3個特定字段是相同的,但未知:如何顯示紀錄是3場匹配

表:

FIELD 1 | FIELD 2 | FIELD 3 | FIELD 4 
---------|--------------|------------|--------------- 
    1  | 01-01-15 | 21  |  150 
    1  | 01-01-15 | 24  |  12 
    1  | 02-01-15 | 21  |  681 
    1  | 01-01-15 | 21  |  299 

期望的結果:

FIELD 1 | FIELD 2 | FIELD 3 | FIELD 4 
-------------|--------------|-------------|------------ 
     1  | 01-01-15 | 21  |  150 
     1  | 01-01-15 | 21  |  299 

對不起 - 這裏還是對於新手!提前致謝!

+0

爲什麼返回2記錄和未3? –

回答

3

計數的行數具有相同的組合和濾波器,用於計數> 1:

select * 
from tab 
qualify 
    count(*) 
    over (partition by field1, field2, field3) > 1 
+0

完美dnoeth!我還沒有使用資格證明。謝謝! – DJDJ23