【问题标题】:sqlite get records with same column valuesqlite 获取具有相同列值的记录
【发布时间】:2010-03-16 17:43:29
【问题描述】:

我有一个 SQLite 数据库,其中包含人员姓氏、名字、部门,我需要进行查询以显示任何具有相同名字和姓氏的人。我发现以下语句可以满足我对单个字段的要求,但是当我尝试使用它来提取只有姓氏相同的所有记录时,它似乎对我不起作用。我该怎么做?

Select myField From myTable Group by myField Where count(myField)>1 

【问题讨论】:

    标签: sql sqlite


    【解决方案1】:

    尝试:

    Select 
        firstname,LastName,Count(*)
        From myTable 
        Group by firstname,LastName 
        HAVING Count(*)>1
    

    GROUP BY 组合命名值相同的行。
    HAVING 删除不符合条件的组。

    上述查询将列出名字和姓氏,以及所有实际有重复的名字/姓氏的重复计数。

    【讨论】:

      【解决方案2】:

      首先,您需要使用 HAVING,而不是 WHERE 来限定 GROUPed BY 结果:

       SELECT myField FROM myTable GROUP BY myField HAVING COUNT(myField) > 1 
      

      其次,您可以将其扩展到多个列,如下所示:

       SELECT MyCol1, MyCol2 FROM MyTable 
       GROUP BY MyCol1, MyCol2
       HAVING COUNT(*) > 1
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-16
        • 2021-11-03
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多