假设我们有这个查询
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
来源: https://codeday.me/bug/20191210/2103210.html