mysql-如何在其自己的查询中获得一个值的总出现次数?

前端之家收集整理的这篇文章主要介绍了mysql-如何在其自己的查询中获得一个值的总出现次数? 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

假设我们有这个查询

SELECT * FROM table

这是它的结果.

id | user_id
------------
1  | 1
------------
2  | 1
------------
3  | 2
------------
4  | 1

如何获得user_id作为其他字段出现的频率(没有一些主要的SQL查询)

id | user_id | count
--------------------
1  | 1       | 3
--------------------
2  | 1       | 3
--------------------
3  | 2       | 1
--------------------
4  | 1       | 3

我们目前在代码中具有此值,但是我们正在对该表实现排序,我希望能够在SQL查询中进行排序.

顺便说一句,如果没有一些主要技巧不可能做到这一点,我们将跳过对该字段的排序.

最佳答案
我相信您只想在最后添加一个子查询

SELECT
    t.id,t.user_id,(SELECT COUNT(*) FROM table WHERE user_id = t.user_id) AS `count`
FROM table t;

猜你在找的MySQL相关文章