我需要从表PERSON中获取age >=70
的名称P列和列BIRTHDATE(varchar( 8))。获取当前年份和出生日期之间的年龄,并给出**“转换日期和/或字符串中的时间时转换失败。”**
只是在我开始做显示年龄> = 70之前尝试这个查询。
select DATEDIFF (year , person.BirthDate, GETDATE()) as Age, * from person
这个查询给出
“转换从字符串转换日期和/或时间时失败了。”
我应该怎么做?我真的无法想象。谢谢
什么是日期的格式'person.BirthDate'? – cdm
你不能在varchar列中使用DATEDIFF。您必须将/ var varchar转换为datetime/date。 – Manoj
你能提供一个这个行看起来像什么样或表格架构的例子吗? –