急救在SQL语句中用DATEPART提取分钟,老是不对
SELECT *
FROM my_data
WHERE (checked = 0) AND (CONVERT(varchar(13), start_time, 120) = CONVERT(varchar(13),
GETDATE(), 120)) AND (DATEPART([minute], GETDATE()) < 30)
ORDER BY NEWID()
要对同1天同1个小时内前30分钟的数据进行随机排序,用(DATEPART([minute], GETDATE()) 提取分钟然后跟30比较,却把所有同一个小时内的数据都筛选出来了。但我改成DATEPART([Hour], GETDATE()) <10 却能正确的把小于10点前的数据筛选出来。 怎么才能正确的30分钟前的数据筛选出来了??