Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.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 尝试多次查询数据集_Mysql - Fatal编程技术网

Mysql 尝试多次查询数据集

Mysql 尝试多次查询数据集,mysql,Mysql,我做错了什么?尝试输出两个计数,需要按等级分组 SELECT grade, COUNT(DISTINCT ID) AS total, SUM(case when course like 'AS%' then 1 else 0 END) Total_As FROM schedule GROUP BY Grade ORDER BY Grade ASC 唯一的问题是,Total_As正在计算多个实例的等级。如果员工至少参加了一次课程为“AS%”的培训,则只需计算一次。该脚本当前正在将员

我做错了什么?尝试输出两个计数,需要按等级分组

SELECT grade, COUNT(DISTINCT ID) AS total, SUM(case when course like 'AS%'      
then 1 else 0 END) Total_As FROM schedule GROUP BY Grade ORDER BY Grade ASC 

唯一的问题是,Total_As正在计算多个实例的等级。如果员工至少参加了一次课程为“AS%”的培训,则只需计算一次。该脚本当前正在将员工(ID)获取的每一个“作为%”计数。需要“案例”部分仅对员工(ID)进行一次计数,以表明员工至少参加了一次“AS%”培训,如果他们没有参加,则为0。SUM不应将员工计数超过一次

您不能在联接中执行单独的计数,因为表是为一个计数而连接的。在“左联接打开”之后出现语法错误。你们能说明你们想做什么吗?试着根据表中的计数计算平均值。我还有别的解决办法吗?是的,你可以。但是为什么需要“AS”过滤器呢?我想我需要添加AS过滤器来区分同一SELECT语句的查询。