Date Teradata将日期转换为午夜
下面是原始代码Date Teradata将日期转换为午夜,date,time,teradata,Date,Time,Teradata,下面是原始代码 convert(datetime, (substring(convert(varchar(26), convert(datetime,getdate())),1,12) + '23:59:59:996')) 输出为=6/17/2015 11:59:59.996 我在下面将其转换为Teradata CAST(CURRENT_TIMESTAMP AS DATE FORMAT 'MM/DD/YYYY') || '
convert(datetime,
(substring(convert(varchar(26),
convert(datetime,getdate())),1,12) +
'23:59:59:996'))
输出为=6/17/2015 11:59:59.996
我在下面将其转换为Teradata
CAST(CURRENT_TIMESTAMP AS DATE FORMAT 'MM/DD/YYYY') || ' 23:59:59:999990'
但在编译存储过程时,它会产生以下错误
表达式“E(5404):日期时间字段溢出”无效或缺失
Teradata中是否有将一天设置为午夜的命令
谢谢当您将日期设置为午夜时,您可以增加或减少间隔:
-- tomorrow minus a millisecond
CAST(CURRENT_DATE +1 AS TIMESTAMP(3)) - INTERVAL '0.001' SECOND
-- or today plus almost 24 hours
CAST(CURRENT_DATE AS TIMESTAMP(3)) + INTERVAL '23:59:59.999' HOUR TO SECOND
使用previor
有一个简化版本,您不必考虑厘米/毫秒/微秒:
-- tomorrow minus one unit of time (based on the input datatype)
Prior(Cast(Current_Date+1 AS TIMESTAMP(3)))