有人可以帮助我将以下PL SQL代码转换为它的MSSQL等价物吗?提前谢谢。
return to_date(l_date_time, 'rrrrdddhh24miss');
答案 0 :(得分:0)
MS SQL Server 2012架构设置:
CREATE TABLE Table1
([l_date_time] varchar(25))
;
INSERT INTO Table1
([l_date_time])
VALUES
('1-5-13 1:02:03 PM'),
('9-4-73 9:10:11 AM')
;
查询1 :
select convert(varchar(4), datepart(yyyy,l_date_time)) +
right('00' + convert(varchar(3), datepart(dy,l_date_time)),3) +
right('0' + convert(varchar(2), datepart(hh,l_date_time)),2) +
right('0' + convert(varchar(2), datepart(mi,l_date_time)),2) +
right('0' + convert(varchar(2), datepart(ss,l_date_time)),2)
from Table1
<强> Results 强>:
| COLUMN_0 |
|---------------|
| 2013005130203 |
| 1973247091011 |
另外,考虑到这一点:
“Microsoft SQL Server使用2049作为解释日期的截止年份; OLE自动化对象使用2030.您可以使用两位数年份截止选项在SQL Server和客户端应用程序之间提供日期值的一致性。但是,为了避免歧义使用日期,在数据中使用四位数年份。“