我有一个包含两列的表格:
serial_number
1
2
3
dateOfAppoinement
2011-06-30 00:39:04.130
2011-06-30 00:40:01.130
2011-06-30 00:49:04.130
我想获得一天中最高的serial_number。我必须避免时间的一部分。我只是使用日期部分。
谁能告诉我怎么办?
答案 0 :(得分:1)
我更新了我的回答,使用像snkmchnb建议的转换。但是在SQL Server 2008中有一个DATE数据类型,它只是一年中的日期部分,因此您不必指定120代码。我对此进行了测试,它运行良好,SQL非常简单。
SELECT
MAX(serial_number),
CONVERT(DATE, dateOfAppointment) as [Day]
FROM
#TempSerialsByDate
GROUP BY
CONVERT(DATE, dateOfAppointment)
答案 1 :(得分:0)
我认为这个选择解决了你的问题,无法判断它是否是最佳方式:
select dateadd(dd,0, datediff(dd,0, dateOfAppoinement ))
from your_table where serial_number = (select max(serial_number) form your_table)
如何在sql server中找到截断日期: How can I truncate a datetime in SQL Server?