Sql Interval关键字在Oracle中是如何工作的?
我有两个问题:Sql Interval关键字在Oracle中是如何工作的?,sql,oracle,Sql,Oracle,我有两个问题: SELECT 300*interval '1' HOUR FROM DUAL -- 0 5:0:0.0 (Output) SELECT 300* interval '1' minute FROM DUAL -- 12 12:0:0.0(Output) 我无法了解interval关键字如何工作以及生成的输出格式是什么?最好始终了解乘法或任何其他数学运算的所有参与者,以便理解它 '1'小时 select interval '1' HOUR from dual; 将返回
SELECT 300*interval '1' HOUR FROM DUAL -- 0 5:0:0.0 (Output)
SELECT 300* interval '1' minute FROM DUAL -- 12 12:0:0.0(Output)
我无法了解interval关键字如何工作以及生成的输出格式是什么?最好始终了解乘法或任何其他数学运算的所有参与者,以便理解它 '1'小时
select interval '1' HOUR from dual;
将返回1小时,然后将其与数字300相乘,您将得到:
+000000012 12:00:00.000000000
因为(300*1)/24=12.5。或者12天12小时
'1'分钟
同样的事情也发生在你的结果是5小时的分钟里。此查询:
select interval '1' minute FROM DUAL
将返回1分钟,然后将其与数字300相乘,以获得以下结果:
+000000000 05:00:00.000000000
因为(300*1)/60=5或5小时。
p.S.
根据您使用的工具,您可以看到以下结果:
+12:00:00.000000
+00 05:00:00.000000您的第一个查询:
--300 * 1 hour => 12 days 12 hours which is +000000012 12:00:00.000000000
SELECT 300 * ( INTERVAL '1' HOUR ) FROM DUAL;
-- 300 * 1 minute => 300 Minute which is 300 / 60 = 5 Hours => +000000000 05:00:00.000000000
SELECT 300 * (interval '1' minute) FROM DUAL
希望能有所帮助我相信您的问题中混用了“(输出)”结果。先生,我无法获取+0000000 12:00:00.000000000请共享输出格式的文档链接,我无法获取此outputHi@radha的含义,我将非常乐意帮助你更多…请告诉我你得到了什么?在你的问题中,你说你不理解这是如何工作的,你写的结果是
12:0:0.0(输出)
?Hi@radha你说“请共享输出格式的文档链接”是什么意思?select语句的每个步骤都在我的回答中进行了解释。请详细说明您的问题所在。我无法理解+0000000 12:00:00.000000000中前导零的含义,以及如何解释12:00:00.000000000,是12小时0分0秒吗?