慕容森
2019-08-29 08:31:58
選擇語(yǔ)句以查找某些字段的重復(fù)項(xiàng)你能幫我用SQL語(yǔ)句來(lái)查找多個(gè)字段的重復(fù)項(xiàng)嗎?例如,在偽代碼中:select count(field1,field2,field3) from table where the combination of field1, field2, field3 occurs multiple times并且從上面的陳述中,如果有多次出現(xiàn),我想選擇除第一個(gè)以外的每個(gè)記錄。
3 回答

一只甜甜圈
TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超5個(gè)贊
這是我喜歡的SQL Server 2005的有趣解決方案。我將假設(shè)“對(duì)于除第一個(gè)之外的每個(gè)記錄”,你的意思是我們可以使用另一個(gè)“id”列來(lái)標(biāo)識(shí)哪個(gè)行是“第一個(gè)”。
SELECT id
, field1
, field2
, field3
FROM
(
SELECT id
, field1
, field2
, field3
, RANK() OVER (PARTITION BY field1, field2, field3 ORDER BY id ASC) AS [rank]
FROM table_name
) a
WHERE [rank] > 1
添加回答
舉報(bào)
0/150
提交
取消