如何保留重复的单元格,但清除未重复的单元格呢?

时间:2020-02-11 12:11:22

标签: sql sql-server

因此,我在查询中有一列,该列将显示重复项和非重复项。我想保留具有重复项的行,但摆脱没有重复值的行。

这是公司的ID号,我们需要查看该公司是否多次出现以仅显示那些公司。任何帮助将不胜感激,因为我已经拖网了,由于其他子查询,我尝试的所有内容均无法正常工作(我也没有写原始查询,但也无济于事!)

我的数据可以复制如下:

CREATE TABLE tbl 
(
    CaseID       VARCHAR(10),
    Appointed    VARCHAR(10),
    Closed       VARCHAR(10),
    CompanyID    INT
)

INSERT INTO tbl VALUES
('BESP01F', '27/07/2018' ,'26/09/2019' ,7801500 ),
('BESP01F', '27/07/2018' ,'26/09/2019' ,7801500 ),
('CITR01F', '03/02/2011' ,'18/03/2013' ,6209287 ),
('FOUR01F', '10/01/2019' ,'06/11/2019' ,6245409 ),
('MJBS01F', '29/11/2011' ,'28/01/2013' ,557544  ),
('MJBS01F', '29/11/2011' ,'28/01/2013' ,5575442 ),
('SLHG01F', '13/05/2011' ,'23/01/2013' ,4913396 ),
('SMIT03F', '31/07/2013' ,'19/08/2014' ,6890203 ),
('SMITH02F','31/07/2013', '11/08/2014', 6890329)

1 个答案:

答案 0 :(得分:0)

尝试一下。子查询返回具有重复值的公司ID,我们将其用作原始表中SELECT的过滤器

SELECT   *
FROM     tbl
WHERE    CompanyID IN (
                         SELECT    CompanyID
                         FROM      tbl
                         GROUP BY  CompanyID
                         HAVING    COUNT(*) > 1
                       )