ocp 11g考試題庫詳解:1Z0-051-104題
最新學訊:近期OCP認證正在報名中,因考試人員較多請盡快報名獲取最近考試時間,報名費用請聯系在線老師,甲骨文官方認證,報名從速!
我要咨詢ocp 11g考試題庫詳解:1Z0-051-104題,完整題庫請點擊這里聯系老師咨詢了解
104. Examine the structure of the PROMOS table:
name Null Type
PROMO_ID NOT NULL NUMBER(3)
PROMO_NAME VARCHAR2(30)
PROMO_START_DATE NOT NULL DATE
PROMO_END_DATE DATE
You want to generate a report showing promo names and their duration (number of days). If the
PROMO_END_DATE has not been entered, the message 'ONGOING' should be displayed.
Which queries give the correct output? (Choose all that apply.)
A. SELECT promo_name, TO_CHAR(NVL(promo_end_date -promo_start_date,'ONGOING'))
FROM promos;
B. SELECT promo_name,COALESCE(TO_CHAR(promo_end_date - promo_start_date),'ONGOING')
FROM promos;
C. SELECT promo_name, NVL(TO_CHAR(promo_end_date -promo_start_date),'ONGOING')
FROM promos;
D. SELECT promo_name, DECODE(promo_end_date -promo_start_date,NULL,'ONGOING',promo_end_date - promo_start_date)
FROM promos;
E. SELECT promo_name, decode(coalesce(promo_end_date,promo_start_date),null,'ONGOING',
promo_end_date - promo_start_date)
FROM promos;
Answer: BCD
試題解析:
ANVL要求括號內參數的類型需一致,,NVL(promo_end_date -promo_start_date,'ONGOING')此處類型不一致,一個為數值型,一個為字符型
B, COALESCE 需括號內參數類型需一致,TO_CHAR(promo_end_date - promo_start_date),'ONGOING') ,此處使用to_char轉換,兩個參數都為字符型,可以比較。正確。
C, NVL(TO_CHAR(promo_end_date -promo_start_date),'ONGOING'),NVL括號內兩個參數都為字符型,正確。
D,表達式正確
E,不滿足題意,coalesce返回第一個不為空的值,因為promo_start_date肯定不為空,所以即使promo_end_date為空,coalesce也會返回promo_start_dat,所以都會顯示promo_end_date - promo_start_date值,即當promo_end_date為空時,還是會顯示空(注意,如果你直接指定NULL-sysdate會報轉換數據類型錯,而在字段里就可以減,并返回空。