[英]Conversion failed when converting date and/or time from character string
我写了一个实际搜索记录的程序。 当我执行它时,它给出了一个错误,它说:
从字符串转换日期和/或时间时转换失败。
陈述:
((CONVERT(varchar, DATEPART(YYYY, Tbl_Contract.ContractDate), 101)) = @Year or @Year = '')
看来您正在将日期转换为年份值:
DATEPART(YYYY,@ContractDate)
然后尝试将其转换回日期:
CONVERT(varchar, DATEPART(YYYY, @ContractDate),101)
你可以试试这个:编辑
datepart(yyyy, CONVERT(datetime, @ContractDate))
由于ContractDate
是Varchar
您可以directly
使用
SubString(ContractDate, x, 4) = @YearString
或者你可以封装条件
Case when IsDate(ContractDate) = 1
then ((CONVERT(varchar, DATEPART(YYYY, @a), 101)))
else NULL
end
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.