1. 程式人生 > >OCP-1Z0-051-V9 02-100題

OCP-1Z0-051-V9 02-100題

100. View the Exhibit and examine the structure of the PROMOTIONS table.

Which SQL statements are valid?  (Choose all that apply.) 

A. SELECT promo_id, DECODE(NVL(promo_cost,0), promo_cost,                        

promo_cost * 0.25, 100) "Discount"

FROM promotions;

B. SELECT promo_id, DECODE(promo_cost, 10000,       

DECODE(promo_category, 'G1', promo_cost *.25, NULL),       

NULL) "Catcost"

FROM promotions;

C. SELECT promo_id, DECODE(NULLIF(promo_cost, 10000),                        

NULL, promo_cost*.25, 'N/A') "Catcost"

FROM promotions;

D. SELECT promo_id, DECODE(promo_cost, >10000, 'High',                                  

<10000, 'Low') "Range"

FROM promotions;

Answer: AB 答案解析: 參考: http://blog.csdn.net/rlhua/article/details/12868497 http://blog.csdn.net/rlhua/article/details/12860467

C不正確,因為把’N/A’隱式轉換成數值時不成功。D語法不正確。

DECODE(expr,search1,result1[,search2,result2……,default]):比較expr與search,如果等於search1則返回result1,如果等於search2則返回result2,依次類推,如果都不等於,如果有default則返回default,否則返回NULL.

ORACLE在比較之前,會自動把expr和每一個search隱式轉換成第一個search(search1)的資料型別。自動把返回值轉換成第一個result(result1)的資料型別。如果第一個result的資料型別為CHAR或者值是null,則Oracle轉換返回值為VARCHAR2.

在DECODE函式中,NULL是相等的,如果expr為空,則Oracle將會返回第一個為NULL的search所對應的result。DECODE列表中的最大表達式個數為255個。

再分享一下我老師大神的人工智慧教程吧。零基礎!通俗易懂!風趣幽默!希望你也加入到我們人工智慧的隊伍中來!http://www.captainbed.net