SQL记录

查询一个表中某个字段的重复数据:

select * from tt_smt_fixed_asset_add a where (a.ASSET_number) in  (select ASSET_number from tt_smt_fixed_asset_add group by ASSET_number  having count(*) > 1) ORDER BY ASSET_number

这是在表tt_smt_fixed_asset_add 中查找ASSET_number为重复的数据。
select ASSET_number from tt_smt_fixed_asset_add group by ASSET_number having count() > 1
先把指定的字段名字按照group 分组,分组后使用having 来进行筛选,having count(
)>1就是条件,分组计算条目数大于1的都被筛选出来了。

oracle
row_number() OVER (PARTITION BY COL1 ORDER BY COL2) 表示根据COL1分组,在分组内部根据 COL2排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内连续的唯一的)

你可能感兴趣的:(SQL记录)