sql - SQL 语句唯一 ID,然后按唯一 ID 分组并计算不同的其他 ID 组
问题描述
我想进行一个查询,使唯一 ID 连接,然后按此唯一 ID 分组,然后按不同计算另一个字段。我得到了输出,但计数已关闭。我通过另一个来源进行了验证。
SELECT
CONCAT(x, y, z, a) AS 'uniqueid',
COUNT(DISTINCT id) AS 'count'
FROM bv
GROUP BY
x, y, z, a
解决方案
您需要对SELECT
列表中的相同非聚合字段(或本例中的复合字段)进行分组。您应该能够使用下面的查询来获取您要查找的内容:
SELECT
CONCAT(x,y,z,a) AS 'uniqueid'
,COUNT(DISTINCT id) AS 'count'
FROM bv
GROUP BY CONCAT(x,y,z,a)
推荐阅读
- linux - Linux tr 命令失败“未对齐的构造”
- sql - 如果存在NULL,则排除多个条目的内部联接查询
- android - 单击显示旧数据时使用 RecyclerView 搜索视图
- python - String Join 将 True 视为布尔值而不是字符串
- mysql - 如何将kafka连接到mysql?
- azure - 如何确保通过 Azure 服务总线队列接收我的所有消息?
- go - 练习解决方案中的内存泄漏:等效二叉树?
- shiro - 用于 mongodb 的 Apache shiro ini 文件
- sql-server - 在 bigquery 中交叉应用等效的 MSSQL 运算符
- java - OptaPlanner 是否对链式计划实体上的 ChangeMove 进行了错误的说明?