Dates are stored in the default format of dd-mm-rr.
Which two SQL statements would give the required output? (Choose two.)
A. SELECT SYSDATE - TO_DATE('01/JANUARY/2007') FROM DUAL;
B. SELECT TO_DATE(SYSDATE,'DD/MONTH/YYYY')-'01/JANUARY/2007' FROM DUAL;
C. SELECT SYSDATE - TO_DATE('01-JANUARY-2007') FROM DUAL
D. SELECT SYSDATE - '01-JAN-2007' FROM DUAL
E. SELECT TO_CHAR(SYSDATE,'DD-MON-YYYY')-'01-JAN-2007' FROM DUAL;
Answer: A,C
Explanation:
hr@TESTDB>SELECT SYSDATE - TO_DATE('01/JANUARY/2007') FROM DUAL;
SYSDATE-TO_DATE('01/JANUARY/2007')
----------------------------------
2553.97258
hr@TESTDB>SELECT TO_DATE(SYSDATE,'DD/MONTH/YYYY')-'01/JANUARY/2007' FROM DUAL;
SELECT TO_DATE(SYSDATE,'DD/MONTH/YYYY')-'01/JANUARY/2007' FROM DUAL
*
ERROR at line 1:
ORA-01722: invalid number
hr@TESTDB>SELECT SYSDATE - TO_DATE('01-JANUARY-2007') FROM DUAL;
SYSDATE-TO_DATE('01-JANUARY-2007')
----------------------------------
2553.97277
hr@TESTDB>SELECT SYSDATE - '01-JAN-2007' FROM DUAL;
SELECT SYSDATE - '01-JAN-2007' FROM DUAL
*
ERROR at line 1:
ORA-01722: invalid number
hr@TESTDB>SELECT TO_CHAR(SYSDATE,'DD-MON-YYYY')-'01-JAN-2007' FROM DUAL;
SELECT TO_CHAR(SYSDATE,'DD-MON-YYYY')-'01-JAN-2007' FROM DUAL
*
ERROR at line 1:
ORA-01722: invalid number
Explanation: