sql去重查询

sql去重查询

简单的去重查询可以使用关键字 distinct 他可以去掉某个关键字重复跟全部查询内容重复的数据。

例如:

select distinct id from cpu_product where id=#{id}

这个是可以查询本表的重复id数据

但是实际项目中很多应用场景中会有很复杂的关联关系 然后需要去重就要我们根据实用情况更改。

例如:需求主表1对多子表 关联查询时 肯定会查出很多主表一样的数据
方法1:

select distinct p.* from cpu_product p 
left join cpu_product_details d
on p.id=d.product_id
where p.id=#{id}

或者需要查询子表的一些内容可以选择去掉主表id重复的数据

select distinct d.product_id ,p.* from cpu_product p 
left join cpu_product_details d
on p.id=d.product_id
where p.id=#{id}

以上记录为今天遇到的问题 已解决仅以记录为主,不是最好的方法。

上一篇:聚合函数


下一篇:用另一个数组过滤一个数组-JavaScript