查找具有不同列组合的行

时间:2019-03-11 10:24:48

标签: mysql sql

我的数据库中有一个称为事务的表。该表当前具有特定站点的542,046条记录,比应有的多三条。上载时发生问题,这意味着没有足够的主键。

我将基于直到和开始时间添加一个新密钥,以在以后的数据上传中对此进行说明。

但是,相对于删除并重新上传所有当前数据,我正在尝试查找3个重复的事务并将其删除。

运行此查询时,我得到542,043行:

select count(*) from (
  select distinct start_time, till_id FROM 
    schema.transactions where site_id = "siteNo"
  )table2

我想要的是出现在542,046行中而不是542,043行中的三个transaction_id。

不幸的是,这些重复的行的交易ID不同

1 个答案:

答案 0 :(得分:3)

您可以在下面尝试-

select start_time, till_id,count(till_id) FROM 
    schema.transactions where site_id = "siteNo"
group by start_time, till_id
having count(till_id)>1