顾美玲勾引管家|日韩黄色成人|国产精品theporn动漫|欧美日日日|国产精品探花在线

專業只做數據庫實訓和認證的品牌機構

微信公眾號新浪微博
免費咨詢電話:400-0909-964
當前位置: 網站首頁 > DBA實戰 > DBA課程 > Oracle基礎課程:PL/SQL條件控制case

Oracle基礎課程:PL/SQL條件控制case

文章來源: 更新時間:2016/7/20 15:29:01

在線老師點擊咨詢:

最新學訊:近期OCP認證正在報名中,因考試人員較多請盡快報名獲取最近考試時間,報名費用請聯系在線老師,甲骨文官方認證,報名從速!

我要咨詢

Oracle基礎課程:PL/SQL條件控制case,CASE是一種選擇結構的控制語句,可以根據條件從多個執行分支中選擇相應的執行動作。也可以作為表達式使用,返回一個值。類似于C#中的switch語句。語法是:

語法格式:CASE

CASE [selector]

WHEN 表達式1 THEN 語句序列1

WHEN 表達式2 THEN 語句序列2

WHEN 表達式3 THEN 語句序列3

……

[ELSE 語句序列N]

END CASE;

語法解析:

如果存在選擇器selector,選擇器selector與WHEN后面的表達式匹配,匹配成功就執行THEN后面的語句。如果所有表達式都與selector不匹配,則執行ELSE后面的語句。

案例4:輸入一個字母A、B、C分別輸出對應的級別信息。

代碼演示:CASE中存在selector,不返回值

DECLARE

      v_grade CHAR(1):=UPPER('&p_grade'); 

BEGIN

      CASE v_grade 

           WHEN 'A' THEN

               dbms_output.put_line('Excellent');

           WHEN 'B' THEN

               dbms_output.put_line('Very Good');

           WHEN 'C' THEN

               dbms_output.put_line('Good');

           ELSE

               dbms_output.put_line('No such grade');

      END CASE;

END;

代碼解析:

① & grade表示在運行時由鍵盤輸入字符串到grade變量中。

② v_grade分別于WHEN后面的值匹配,如果成功就執行WHEN后的程序序列。

CASE語句還可以作為表達式使用,返回一個值。

代碼演示:CASE中存在selector,作為表達式使用

DECLARE

      v_grade CHAR(1):=UPPER('&grade');

      p_grade VARCHAR(20) ;

BEGIN

      p_grade := 

      CASE v_grade

           WHEN 'A' THEN

               'Excellent'

           WHEN 'B' THEN

               'Very Good'

           WHEN 'C' THEN

               'Good'

           ELSE

               'No such grade'

      END;

      dbms_output.put_line('Grade:' ||v_grade||',the result is '||p_grade);

END;

代碼解析:

① CASE語句可以返回一個結果給變量p_grade

PL/SQL還提供了搜索CASE語句。也就是說,不使用CASE中的選擇器,直接在WHEN后面判斷條件,第一個條件為真時,執行對應THEN后面的語句序列。

代碼演示:搜索CASE

DECLARE

      v_grade CHAR(1):=UPPER('&grade');

      p_grade VARCHAR(20) ;

BEGIN

      p_grade :=

      CASE

           WHEN v_grade='A' THEN

               'Excellent'

           WHEN v_grade='B' THEN

               'Very Good'

           WHEN v_grade='C' THEN

               'Good'

           ELSE

               'No such grade'

      END;

      dbms_output.put_line('Grade:' ||v_grade||',the result is '||p_grade);

END;

本文地址:http://www.mudan321.com/dba/kecheng/12524944613.html 轉載請注明!


PostgreSQL入門到精通 100+ 個學習資料

Oracle培訓機構

金牌講師<>

冉乃綱-老師CUUG金牌講師
冉老師 CUUG金牌講師 Oracle及RedHat高級講師、Unix/Linux 資深專家...[詳細了解老師]

免費咨詢上課流程 客服在線中

陳衛星-老師CUUG金牌講師
陳老師 CUUG金牌講師 精通Oracle管理、備份恢復、性能優化 11年Ora...[詳細了解老師]

免費咨詢上課流程 客服在線中

選學校如何選擇適合自己的學校

CUUG -CHINA UNIX USER GROUP,是國際UNIX組織UNIFORUM的中國代表,是國內悠久的專業UNIX培訓機構,被譽為中國UNIX 的搖籃。多年來,以提高教學質量為本,強調素質教育,積極引進、消化國外的新技術,有效的結合中國....[詳情]

一站式服務(從入學到就業一幫到底)

入學

學習

就業

實操

食宿
地址:北京市海淀區田村山南路35號院17號樓
課程咨詢: 400-0909-964
企業服務:137 1818 8639(陳經理)
部分信息來源于網絡,如有錯誤請聯系指正!
版權所有@北京神腦資訊技術有限公司 (CUUG,中國UNIX用戶協會) Copyright 2016 ALL Rights Reserved 京ICP備11008061號-1