[英]Teradata Convert DATE to midnight
下面是原始代码
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):Datetime字段溢出”无效或缺失。
Teradata中是否有命令将日期设置为午夜?
谢谢
当您将日期投放到tamestamp时,将其设置为午夜,则可以添加或减去间隔:
-- 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
使用PRIOR
有一个简化的版本,您无需考虑centi / milli / microseconds:
-- tomorrow minus one unit of time (based on the input datatype)
Prior(Cast(Current_Date+1 AS TIMESTAMP(3)))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.