【发布时间】:2018-02-24 09:07:30
【问题描述】:
我有一个VARCHAR(10) 数据类型列,其中日期为DD\MM\YYYY 格式。
我尝试使用convert(datetime,LOCALDATE_T,103) 等等。但是给我一个错误
从字符转换日期和/或时间时转换失败 字符串。
我不确定我的查询是否可以读取DD\MM\YYYY。我通常从DD/MM/YYYY 格式转换列,即/,但不是这个\
请求您的帮助。
【问题讨论】:
-
REPLACE(mydatetextfield, '\', '/')
-
不要将日期存储为字符串。这是反人类罪。使用
date类型 -
例如,您不能查询其他日期之前、之后或之间的日期,因为字符串是按字母顺序排序的。您不能在此列上使用索引。强制转换将允许您查询但强制执行 FULL TABLE SCAN。基本上没用。
标签: sql-server-2008 tsql ssms ssms-2014