gpt4 book ai didi

mysql - 计算多列的不同值

转载 作者:行者123 更新时间:2023-11-29 05:18:12 26 4
gpt4 key购买 nike

this 类似的问题,但是我想计算有多少不同的不同出现一个 user_id 的值。如果我有下表:

USER_ID  DATA
123 abc
234 abc
123 def
456 def
123 abc

我想要以下结果:

USER_ID  COUNT
123 2
234 1
456 1

因为“123”同时具有“abc”和“def”数据值,而“234”和“456”只有一个不同的数据值。

目前我有以下伪代码:

rows = SELECT DISTINCT user_id FROM table
for for in rows:
result = SELECT DISTINCT user_id, data FROM table WHERE user_id = <row>
if result.rowcount > 2:
doSomething()

但这需要很长时间,因为它必须为每个 user_id 调用。

这可以用一条 MySQL 命令完成吗?

最佳答案

只需使用 COUNT() 聚合和 GROUP BY

SELECT
user_id,
COUNT(DISTINCT data) AS distinct_data_count
FROM table
GROUP BY user_id

关于mysql - 计算多列的不同值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29757045/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com