我有一个如下表格:
Table: student_test_records
Student TestDate Result
------- ------------------ -------
A 2015-01-26 17:28:11 Pass
B 2015-01-24 17:28:11 Fail
C 2015-01-26 17:28:11 Pass
D 2015-01-26 17:28:11 Fail
E 2014-05-23 17:28:11 Pass
F 2013-06-23 17:28:11 Pass
G 2014-05-23 17:28:11 Fail
我正在尝试编写一个在SQL Server中的查询,以以下格式显示每天的通过/失败结果数量:
FormattedDate Result Count
----------- ------ -----
May-23-2013 Pass 1
May-23-2014 Fail 1
May-23-2014 Pass 1
Jan-24-2015 Fail 1
Jan-26-2015 Fail 1
Jan-26-2015 Pass 2
以下是我尝试的查询:
SELECT FORMAT(TestDate, 'MMM-dd-yyyy') as FormattedDate, Result, Count
FROM student_test_records
GROUP BY FORMAT(TestDate, 'MMM-dd-yyyy'), Result
order BY FORMAT(TestDate, 'MMM-dd-yyyy');
结果集正确,但是排序是按格式化日期字符串(月-日-年按字母顺序)排序的。我该如何根据实际日期(TestDate)对结果进行排序?在MySQL中,我可以使用ORDER BY TestDate
而不是上面查询中的最后一行。