web-dev-qa-db-ja.com

日数を追加Oracle SQL

SELECT ORDER_NUM, CUSTOMER_NUM, CUSTOMER_NAME, ADD_DAYS (ORDER_DATE, 20)
FROM CUSTOMER, ORDERS; 

Oracle ExpressはADD_DAYSが無効だと言っていますか?私は何を間違っていますか?

38
SQL_Student

N日を日数に追加する場合。次のようにプラス演算子を使用できます-

SELECT ( SYSDATE + N ) FROM DUAL;
47
mkumawat10

プラス演算子を使用して、日付に日付を追加できます。

order_date + 20
29
Mike

より一般的な方法では、「INTERVAL」を使用できます。ここにいくつかの例があります:

1)日を追加する

select sysdate + INTERVAL '1' DAY from dual;

2)20日追加する

select sysdate + INTERVAL '20' DAY from dual;

2)数分追加する

select sysdate + INTERVAL '15' MINUTE from dual;
24
Francesco Serra

シンプルです。使用できます

select (sysdate+2) as new_date from dual;

これにより、現在の日付から2日が追加されます。

7
shah

「INTERVAL '1' DAY」の短所は、追加された日数の間バインド変数を使用できないことです。代わりに、この小さな例のように、numtodsintervalを使用できます。

select trunc(sysdate) + numtodsinterval(:x, 'day') tag
from dual

参照: Oracle DatabaseオンラインドキュメントのNUMTODSINTERVAL

4
Michael Kremser