我有一個包含admission_date和student_status列的學生表,我想獲得特定年份的每個月的全部入場許可,而admission_date列類型是DateTime。即如何獲取特定月份的數據sql
**Month** **Total_Admission**
Jan-2016 90
Feb-2016 70
Mar-2016 109
我有一個包含admission_date和student_status列的學生表,我想獲得特定年份的每個月的全部入場許可,而admission_date列類型是DateTime。即如何獲取特定月份的數據sql
**Month** **Total_Admission**
Jan-2016 90
Feb-2016 70
Mar-2016 109
與下面的查詢嘗試。
SELECT replace(right(convert(varchar, admission_date, 106), 8), ' ', '-') Month,COUNT(*) TotalAdmissions
FROM yourTable
WHERE YEAR(admission_date) = 2016
GROUP BY replace(right(convert(varchar, admission_date, 106), 8), ' ', '-')
您可以使用extract(year_month...
檢索每月統計。事情是這樣的:
SELECT
extract(year_month FROM date(admission_date)) month,
count(*) total_admission
FROM your_table;
嘗試這樣做:
SELECT COUNT(*) AS admission_total
FROM yourTable
GROUP BY MONTH(admission_date)
試試這個:
SELECT LEFT(DATENAME(MONTH,admission_date),3)+'-2016' as MonthNumber,COUNT(*) TotalAdmissions
FROM TableName
WHERE YEAR(admission_date) = 2016
GROUP BY LEFT(DATENAME(MONTH,admission_date),3)+'-2016'
其獲得每個日期的招生,但我想,因爲它不是在聚合函數或GROUP BY子句中包含每個月 –
列「Student.admission_date」在選擇列表中無效。 –
是的,我已經嘗試過,但我可以得到它像jan-2016 –