【发布时间】:2020-09-25 14:43:47
【问题描述】:
如何在[SQL Server]中进行替换或转换?
我有如下所示的表格:
startDate
varchar(5)
----------
08MAY
01JUN
02JUN
10JUN
station
varchar(4)
----------
ICN
LAX
SFO
ICN
startDate 列的类型为 varchar,但存储的数据类似于 'ddMMM'
我在这样的 SQL 查询中请求 01JUN ~ 10JUN...
select *
from dbo.temp
where convert(varchar(5), Startdate) >= convert(varchar(4), '01JUN')
...但是,错误的查询。
请给我建议
【问题讨论】:
-
您想将 startDate 字段转换为标准日期,或者您想保持格式不变但过滤该字段以获取从 01Jun 到 10Jun 的数据?
-
我有点惊讶没有人链接到 Aaron Bertrand 的 Bad habits to kick : choosing the wrong data type
标签: sql sql-server tsql date where-clause