Uma*_*ant 2 sql sql-server datetime date sql-server-2012
我们有一个包含数据类型列的表nvarchar(254)
.此列按以下格式存储日期和时间:
12-MAR-15 04.07.36.000000000 PM
Run Code Online (Sandbox Code Playgroud)
我们需要将其转换为datetime
格式,以便我们可以运行时间相关的查询来提取所需的结果.此数据不以CAST和CONVERT文档页面中提到的任何格式存储
我试着用130
和131
,但没有运气.
这里的格式似乎是 dd-mon-yy hh.mm.ss.mmmmmmm PM
有谁知道我们应该如何将其转换为'datetime'格式?
任何帮助将非常感激.
首先,将日期存储为字符串是一个坏主意.
这是使用STUFF
和REPLACE
函数将它们转换回日期时间的一种方法.
我假设你的所有日期都在2000年之后.
declare @d nvarchar(256) = '12-MAR-15 04.07.36.000000000 PM'
SELECT CONVERT(DATETIME,
STUFF(
REPLACE(REPLACE(
STUFF(@d, 23, 7, ''), '-',' '),'.',':'), 8,0,'20') )
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
467 次 |
最近记录: |