使用SQL select语句计算重复记录中的重复记录

时间:2014-12-11 04:48:56

标签: sql

我有一个带有重复tag_id和序列号的表。如何显示不同tag_id的列表以及与之相关的序列号的数量。换句话说,我需要知道每个不同的tag_id有多少个序列号。

2 个答案:

答案 0 :(得分:1)

尝试此查询..

 SELECT YourColumn, COUNT(*) TotalCount
    FROM YourTable
    GROUP BY YourColumn
    HAVING COUNT(*) > 1
    ORDER BY COUNT(*) DESC

答案 1 :(得分:0)

与Dyrandz类似,但按照您的要求计算每个标签ID的序列号数量。

DECLARE @YourTable AS TABLE (
    tag_id     INT,
    serial_no  VARCHAR(100)
)

INSERT INTO @YourTable (tag_id, serial_no)
VALUES (1, 'abc'), (2, 'cde'), (3, 'def'), (1, 'xyz'), (3, 'lmn')


SELECT tag_id, COUNT(serial_no) AS TotalSerialNumbers
FROM @YourTable
GROUP BY tag_id
ORDER BY 2 DESC