test表
要查出某个用户具有哪些操作,即把操作进行组合
以下的SQL可以达到目的
SELECT NAME,GROUP_CONCAT(operation) AS operation FROM test GROUP BY NAME
接着要查出这样的用户有多少个,直接在SELECT后加上COUNT()函数已经不起作用了。
一种解决方式是把查询结果当作一张表,在外层用SELECT COUNT(*)
SELECT COUNT(*) FROM ( SELECT NAME,GROUP_CONCAT(operation) AS operation FROM test GROUP BY NAME ) AS t
另一种更简单的方式是使用DISTINCT关键字
SELECT COUNT(DISTINCT NAME) FROM test
时间: 2024-10-07 11:48:29