SQL SELECT 从 table 开始计算日期
SQL SELECT date from table, and calculate how many days since that date
我想计算从我数据库中的 table 检索到的特定日期以来已经过去了多少天。根据我在 W3Schools (Here) 上找到的信息,我尝试使用 DATEDIFF,但遇到了几个我似乎无法解决的不同错误。
我在下面包含了我的代码,基于此,我想要发生的是:Select 来自 "Wave_Data" table 的 "DD",以及, 根据 "sysdate", 计算出从那时起已经过去了多少天。
SELECT DATEDIFF(WEEKDAY,:P1_DD,SYSDATE)
FROM WAVE_DATA
WHERE WAVE_NUMBER = :P1_WAVE;
然后,最终计算将被输入到我的 ApEx 数据库中的文本字段中。
提前感谢您提供的任何帮助,
多米尼克
在 Oracle 中,您只需将一个日期减去另一个日期即可得到它们之间的差异(以天为单位):
SELECT SYSDATE - :p1_dd
FROM Wave_Data
WHERE Wave_Number = :p1_wave;
如果你想知道没有任何时间部分的日期之间的差异,那么你可以这样做:
SELECT TRUNC( SYSDATE ) - TRUNC( :p1_dd )
FROM Wave_Data
WHERE Wave_Number = :p1_wave;
或
SELECT FLOOR( SYSDATE - :p1_dd )
FROM Wave_Data
WHERE Wave_Number = :p1_wave;
我想计算从我数据库中的 table 检索到的特定日期以来已经过去了多少天。根据我在 W3Schools (Here) 上找到的信息,我尝试使用 DATEDIFF,但遇到了几个我似乎无法解决的不同错误。
我在下面包含了我的代码,基于此,我想要发生的是:Select 来自 "Wave_Data" table 的 "DD",以及, 根据 "sysdate", 计算出从那时起已经过去了多少天。
SELECT DATEDIFF(WEEKDAY,:P1_DD,SYSDATE)
FROM WAVE_DATA
WHERE WAVE_NUMBER = :P1_WAVE;
然后,最终计算将被输入到我的 ApEx 数据库中的文本字段中。
提前感谢您提供的任何帮助,
多米尼克
在 Oracle 中,您只需将一个日期减去另一个日期即可得到它们之间的差异(以天为单位):
SELECT SYSDATE - :p1_dd
FROM Wave_Data
WHERE Wave_Number = :p1_wave;
如果你想知道没有任何时间部分的日期之间的差异,那么你可以这样做:
SELECT TRUNC( SYSDATE ) - TRUNC( :p1_dd )
FROM Wave_Data
WHERE Wave_Number = :p1_wave;
或
SELECT FLOOR( SYSDATE - :p1_dd )
FROM Wave_Data
WHERE Wave_Number = :p1_wave;