我有以下值的Emp表
Emp_Id Emp_Name Subject Dates
001 Smith Java 07-02-2012
001 Smith oracle 08-02-2012
001 smith C++ 10-02-2012
002 john java 01-01-2012
002 john SE 10-01-2012
002 john c 10-01-2012
001 smith physics 04-01-2012
001 smith c# 07-02-2012
001 smith javascript 07-02-2012
现在,正如我们在这里看到的,史密斯在2月中只研究了3天,在1月中研究了1天
约翰在一月份只学习了2天。
我们如何计算任何员工的人数?
例如:输出应采用以下方式。
Emp_Id Emp_Name Month_Year No_Of_Days_Studied_In_Month
001 smith Feb12 3
001 smith Jan12 1
002 john Jan12 2
最佳答案
您可以GROUP BY YEAR(Dates), MONTH(Dates)
并执行COUNT
。
尝试:
SELECT emp_id,
emp_name,
Date_format(DATE, '%b%y') AS dates,
COUNT(*) AS No_Of_Days_Studied_In_Month
FROM emp
GROUP BY Date_format(DATE, '%b%y'), emp_name
ORDER BY emp.emp_id
关于mysql - MySQL查询学习天数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9171807/