一、原题
二、题目翻译
You need to calculate the number of days from 1st January 2007 till date.
Dates are stored in the default format of dd-mon-rr.
Which SQL statements would give the required output? (Choose two .)
A. SELECT SYSDATE - '01-JAN-2007' FROM DUAL;
B. SELECT SYSDATE - TO_DATE('01/JANUARY/2007') FROM DUAL;
C. SELECT SYSDATE - TO_DATE('01-JANUARY-2007') FROM DUAL;
D. SELECT TO_CHAR(SYSDATE, 'DD-MON-YYYY') - '01-JAN-2007' FROM DUAL;
E. SELECT TO_DATE(SYSDATE, 'DD/MONTH/YYYY') - '01/JANUARY/2007' FROM DUAL;
答案:BC
Dates are stored in the default format of dd-mon-rr.
Which SQL statements would give the required output? (Choose two .)
A. SELECT SYSDATE - '01-JAN-2007' FROM DUAL;
B. SELECT SYSDATE - TO_DATE('01/JANUARY/2007') FROM DUAL;
C. SELECT SYSDATE - TO_DATE('01-JANUARY-2007') FROM DUAL;
D. SELECT TO_CHAR(SYSDATE, 'DD-MON-YYYY') - '01-JAN-2007' FROM DUAL;
E. SELECT TO_DATE(SYSDATE, 'DD/MONTH/YYYY') - '01/JANUARY/2007' FROM DUAL;
答案:BC
二、题目翻译
要计算从2007.1.1到现在的天数
日期以默认的格式dd-mon-rr格式存储。
下面哪个SQL能查出所需的结果(选择2个):
三、题目解析日期以默认的格式dd-mon-rr格式存储。
下面哪个SQL能查出所需的结果(选择2个):
A选项不正确,格式不同,不能直接减,需要显式转才行。
B,C选项正确,显式转换后,再相减。
D选项不正确,都转成字符格式了,不能相减了。
E选项不正确,sysdate本来就是日期格式,不用转换,反而减号是后面的日期需要转换,但却没转。
B,C选项正确,显式转换后,再相减。
D选项不正确,都转成字符格式了,不能相减了。
E选项不正确,sysdate本来就是日期格式,不用转换,反而减号是后面的日期需要转换,但却没转。