繁体   English   中英

Oracle Sql在插入语句时向to_date添加小时和分钟

[英]Oracle Sql adding hours and minute to a to_date while insert statment

您好,我正在尝试创建一个插入语句,其中包括向 to_date 添加 2 小时 10 分钟。

但我不知道我可以使用哪个功能。

这是我目前的声明

insert into xyz values (TO_DATE('22-Oct-2020 11:00 AM', 'DD-MM-YYYY HH:MI AM')) 

但我想在插入时在上面添加 2 小时 10 分钟。

使用日期算术。 在 Oracle 中,您可以向日期添加十进制值( 1代表“1 天”):

insert into xyz 
values (
    to_date('22-Oct-2020 11:00 AM', 'DD-MM-YYYY HH:MI AM') 
    + 2/24 + 10 / 60 / 24
)

或者:

insert into xyz 
values (
    to_date('22-Oct-2020 11:00 AM', 'DD-MM-YYYY HH:MI AM') 
    + interval '2' hour + interval '10' minute
)

或者(归功于 Wernfried Domscheit):

insert into xyz 
values (
    to_date('22-Oct-2020 11:00 AM', 'DD-MM-YYYY HH:MI AM') 
    + interval '2:10' hour to minute
)

您也可以使用interval

insert into xyz values (TO_DATE('22-Oct-2020 11:00 AM', 'DD-MM-YYYY HH:MI AM') + interval '130' minute);
       
        
select TO_DATE('22-Oct-2020 11:00 AM', 'DD-MM-YYYY HH:MI AM') + interval '130' minute from dual;
    
TO_DATE('22-OCT-202
-------------------
22-10-2020 01:10 PM
       

select TO_DATE('22-Oct-2020 11:00 AM', 'DD-MM-YYYY HH:MI AM') + interval '1' day from dual;
    
TO_DATE('22-OCT-202
-------------------
23-10-2020 11:00 AM

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM