Oracle SQL -如何找到两个日期变量之间的差异



我试图找到订单日期和发货日期之间的最长时间。我明白得到它的方法,但我就是不确定。我使用的是JustLee图书订购数据库这是我的代码

SELECT o.ORDER#, o.ORDERDATE, o.SHIPDATE, o.SHIPCITY, o.SHIPSTATE
FROM ORDERS o;
WHERE (SELECT

我本想给你一个更好的查询结果,但我被日期卡住了。任何帮助都是好的帮助。谢谢你的宝贵时间

要找到两个DATE数据类型值之间的差异,只需将其中一个减去另一个。

SELECT ORDER#,
ORDERDATE,
SHIPDATE,
SHIPCITY,
SHIPSTATE,
SHIPDATE - ORDERDATE AS days_between_ship_and_order
FROM   ORDERS;

如果你想找到最大的差值,那么从Oracle 12开始,你可以将结果按差值降序排列,使用FETCH FIRST ROW WITH TIES只找到最大的差值。

SELECT ORDER#,
ORDERDATE,
SHIPDATE,
SHIPCITY,
SHIPSTATE,
SHIPDATE - ORDERDATE AS days_between_ship_and_order
FROM   ORDERS
ORDER BY days_between_ship_and_order DESC
FETCH FIRST ROW WITH TIES ONLY;

最新更新