这就是我所做的:
select top 1000 convert(nvarchar(50), cast([date written] as datetime), 1)
from practicetable
where convert(nvarchar(50), cast([date written] as datetime), 1) = '09/07/16'
虽然这个查询在任何时候都可以小规模工作但我尝试选择超过1000条记录但查询失败了,我收到了这个错误:
从字符串转换日期时间
时转换失败
为什么我不能选择超过1,000条记录?
答案 0 :(得分:2)
将日期保存为字符串始终存在风险。由于你在2008年没有Try_Convert(),我建议你
select distinct [date written] from practicetable order by 1
查看哪些日期格式不正确,并根据需要进行修补
答案 1 :(得分:0)
查询失败,因为它尝试将字符串转换为日期,但字符串不符合日期格式。换句话说,“从字符串转换日期时间时转换失败”。您应该仔细查看基础数据,以确定导致问题的记录。