自从我在SQL Server中指定的日期以来,我将如何返回行列表,这是我目前所拥有的:
select * from SALESTABLE where CREATEDDATETIME
BETWEEN '26/04/2012 00:00:00.00' AND GETDATE()
但这会引发错误:
将varchar数据类型转换为日期时间数据类型 导致了超出范围的价值。
答案 0 :(得分:2)
BETWEEN '26 April 2012' AND GETDATE()
那就行了
答案 1 :(得分:1)
更改字符串格式:
select * from SALESTABLE where CREATEDDATETIME
BETWEEN '20120426' AND GETDATE()
编辑:从评论更新,从未知道破折号打破了ISO格式 - 我一直认为这是'正常',因为SQL管理工作室以该格式输出日期
答案 2 :(得分:0)
select * from SALESTABLE where CREATEDDATETIME
BETWEEN '26/04/2012 00:00:00.00' AND GETDATE()
将此更改为
select * from SALESTABLE where CREATEDDATETIME
BETWEEN CONVERT(datetime, '26/04/2012', 103) AND GETDATE()
并查看是否有帮助