sql - 查找多次出现
问题描述
这是表格:
account no. cust_id Month Installment Status
5212340001 1002 30 15000 Closed
5212340002 1002 66 25000 Active
5212340003 1007 36 80555 Closed
5212340004 1003 60 30000 Active
我想找到拥有多个帐户的 cust_id 的最大出现次数。这是我的代码:
SELECT CUST_ID,COUNT(CUST_ID) AS C
FROM BANK_FD_ACCOUNT
GROUP BY CUST_ID
HAVING C=MAX(C);
我收到错误。但是预期的输出应该是这样的:
cust_id c
1002 2
解决方案
在 MySQL 中(因为问题最初被标记),您可以使用 useORDER BY
并LIMIT
返回一行:
SELECT CUST_ID, COUNT(CUST_ID) AS C
FROM BANK_FD_ACCOUNT
GROUP BY CUST_ID
ORDER BY C DESC
LIMIT 1;
如果出现重复,这将返回任意客户。如果您想要所有这些,请使用RANK()
:
SELECT c.*
FROM (SELECT CUST_ID, COUNT(*) AS C,
RANK() OVER (ORDER BY COUNT(*) DESC) as seqnum
FROM BANK_FD_ACCOUNT
GROUP BY CUST_ID
) c
WHERE seqnum = 1;
您可以使用ROW_NUMBER()
返回一行(类似于LIMIT
MySQL 示例中的)。
推荐阅读
- mobx - 如何拥有非管理员用户未加载的单独管理存储?
- javascript - DevTools 无法在 javascript 中加载 SourceMap 错误
- verilog - 使用 Verilog 对 FSM 进行建模显示 X
- python - 在 python 中返回列表时语法无效
- java - findViewById 更改背景颜色 Android Studio
- infinispan - infinispan,通过传递缓存配置名称获取缓存管理器
- django - Django Channels 没有检测到 NGINX 的 WebSocket 请求
- apache-kafka - 我在哪里可以找到。Kafka 异常“OffsetMetadataTooLargeException”的详细信息?
- woocommerce - 如何在 Woocommerce 中删除表情符号放大镜
- python - 自定义条目未显示在 Tkinter 多窗口上