我有以下代码:
query = "SELECT ResultDate, Result FROM ASPECTRESULTS WHERE EUPN = '" & StudentEUPN & "' AND SubjectCode = '" & SearchClass & "' AND ACCYEAR = '" & AccademicYear & "' ORDER BY RESULTDATE"
我想根据结果的日期获得最新结果。 我尝试使用 SELECT MAX(ResultDate),但没有运气。
任何帮助表示感谢。
此致 格雷厄姆
答案 0 :(得分:0)
您可以编写(假设ResultDate是表中的日期类型列)
query = "SELECT TOP 1 ResultDate FROM ASPECTRESULTS WHERE ..... " & _
"ORDER BY RESULTDATE DESC"
这将返回ResultDate列中的最高日期
说,你应该真正研究parameterized query如何工作以及为什么你应该ALWAYS use parameters而不是字符串连接
修改强>
从上面的评论(ResultDate是Char(10)),然后正确排序此字段是非常痛苦的,特别是如果您将日期存储为dd/MM/yyyy
。在char排序中使用此格式,值'11/01/2013'
遵循值'01/01/2014'
。这是始终在datetime字段中存储日期时间值的众多原因之一。数据库将知道如何正确处理日期,而不考虑如何用字符串表示。
你有两个选择可以克服这个障碍。