Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 不同用户的数量';s ID在表中出现了3次以上_Mysql_Sql_Database_Count - Fatal编程技术网

Mysql 不同用户的数量';s ID在表中出现了3次以上

Mysql 不同用户的数量';s ID在表中出现了3次以上,mysql,sql,database,count,Mysql,Sql,Database,Count,我有一个任务要做,有一个具有不同用户ID的表,SQL query应该统计表中出现的不同用户ID的数量超过3次。例如,表中出现的ID号是1、1、2、1、3、4、3、3、1、2、3、4、5、4、5、4,因为数字1、3和4出现在表中超过3次,SQL查询应该只返回一个行号3。 到目前为止,我所做的是: SELECT COUNT(*) counter FROM (SELECT COUNT(id) as counter_id FROM user_id GROUP BY id HAVING COUNT

我有一个任务要做,有一个具有不同用户ID的表,SQL query应该统计表中出现的不同用户ID的数量超过3次。例如,表中出现的ID号是1、1、2、1、3、4、3、3、1、2、3、4、5、4、5、4,因为数字1、3和4出现在表中超过3次,SQL查询应该只返回一个行号3。 到目前为止,我所做的是:

SELECT COUNT(*) counter 
   FROM (SELECT COUNT(id) as counter_id FROM user_id GROUP BY id HAVING COUNT(id) >3)

如果不正确,我不确定是否正确。正确的是什么。

使用
distinct
inside count(),只从子查询输出中获取id

select count(distinct id) from ( SELECT id  
FROM user GROUP BY id 
HAVING COUNT(id) >3) a

您是否尝试运行您的查询

SELECT COUNT(*) counter
FROM (SELECT COUNT(id) as counter_id
      FROM user_id
      GROUP BY id
      HAVING COUNT(id) > 3
     )
如果是这样,您将得到一个错误,因为
FROM
子句中的子查询需要别名。此外,一个表被称为
user\u id
,这很奇怪

SELECT COUNT(*) counter
FROM (SELECT COUNT(id) as counter_id
      FROM user_id
      GROUP BY id
      HAVING COUNT(id) > 3
     ) u
-------^