sql - 在 Oracle Sql 中查找具有公分母的重复值
问题描述
我需要在具有共同分母的 Oracle Db 表上查找重复值。该表非常大,包含许多国家/地区的许多地址,通过检查一些城市,我看到同一个城市下有许多重复的区域(社区、地区),所以我需要列出同一个城市下的所有重复区域(相同的邮政编码等)。
我已经尝试了许多在 StackOverflow 上找到的查询,但还没有成功。
例如:
SELECT
*
FROM
TABLE1
WHERE
SYNONYM = '1'
AND STATE = 'ENGLAND'
AND DISTRICT IN (
SELECT DISTRICT
FROM
TABLE1
GROUP BY
DISTRICT
HAVING
COUNT(*) > 1);
基本上我需要找到记录a和记录b,其中国家/州/城市/邮政编码相同并输出两者。
简化:
我的表:A、B、C、D、E、F、G、H、I、J、K、L、M、N、O。
查找 C、D、E 和 F 相同的所有记录。显示发生这种情况的所有记录。
C、D 和 E 是数字,F 是描述 (CHAR)
谢谢!
解决方案
如果您想要记录,请使用窗口函数:
select t.*
from (select t.*, count(*) over (partition by c, d, e, f) as cnt
from t
) t
where cnt > 1;
如果您只想要c
///值d
,那么聚合就可以了e
。f
推荐阅读
- curl - 来自 thispersondoesnotexist.com 的卷曲失败,结果为空
- c++ - 有选择地将函数定义添加到 python 命名空间
- arrays - 在 perl 动态 qw 数组中获得意外结果
- azure - 使用带有 GPU 的 Azure 容器实例进行模型训练比使用相同容器进行本地测试慢得多
- python - 使用 Python Tkinter tkFileDialog 获取文件夹路径
- symfony - 在哪里放置函数/方法来测试 SQL 查询的结果
- unity3d - Quaternion.LookRotation() 是如何工作的
- spring-boot - Spring Boot REST 服务 – 最终用户身份验证与 APP(REST 客户端)身份验证
- javascript - 将子节点(超链接)添加到 ES6/JSX 网页 div(导航栏)
- css - 动画角度仅在错误状态下工作