SQL-流程控制結(jié)構(gòu)(19)

流程控制結(jié)構(gòu):

順序結(jié)構(gòu):程序從上往下依次執(zhí)行
分支結(jié)構(gòu):程序從兩條或者多條路徑中選擇一條去執(zhí)行
循環(huán)結(jié)構(gòu):程序在滿足一定條件的基礎(chǔ)上悲关,重復(fù)執(zhí)行一段代碼

一. 分支結(jié)構(gòu)

1.if函數(shù)

 功能:實(shí)現(xiàn)簡單的雙分支
 語法:
 if( 表達(dá)式1业踏,表達(dá)式2秕脓,表達(dá)式3)
 執(zhí)行順序:(類似三元表達(dá)式)
 如果表達(dá)式1成立队魏,則if函數(shù)返回表達(dá)式2的值室囊,否則返回表達(dá)式3的值
 應(yīng)用:任何地方

2.case結(jié)構(gòu)

情況1:類似于java中的switch語句泼橘,一般用于實(shí)現(xiàn)等值判斷

 語法:case 變量|表達(dá)式|字段
      when 要判斷的值 then 返回的值1或語句1饲宿; 
       when 要判斷的值 then 返回的值2或語句2秩命; 
       ...
       else 要返回的值n或語句n尉共;
       end case;

情況2:類似于java中的多量if語句弃锐,一般用于實(shí)現(xiàn)區(qū)間的判斷

  語法:
      case
      when 要判斷的條件1 then 返回的值1或語句1袄友;
      when 要判斷的條件1 then 返回的值2或語句2;
      ...
      else 要返回的值n或語句n霹菊;
      end case剧蚣;

特點(diǎn):

(1)可以作為表達(dá)式,嵌套在其他語句中使用旋廷,可以放在任何地方鸠按,befin end 中或begin end的外面
  可以作為獨(dú)立的語句使用,只能放在begin end中        
       
(2)如果when中的值滿足或條件成立饶碘,則執(zhí)行對應(yīng)的then 后面的語句目尖,并且結(jié)束case
 如果都不滿足,則執(zhí)行else 中的語句或值

(3) else可以省略扎运,如果else省略了瑟曲,并且所有when條件都不滿足,則返回null

4.if結(jié)構(gòu)

 功能:實(shí)現(xiàn)多重分支
 語法:
 if 條件1 then 語句1豪治;
 elseif 條件2 then 語句2洞拨;
 ...
 [else 語句 n;]
 end if;
  
  應(yīng)用在begin end 中 

案例:

案例1:創(chuàng)建存儲過程,根據(jù)傳入的成績负拟,來顯示等級烦衣,比如傳入的成績:90——100.顯示A...

mysql>  create procedure test_case (in score int)
    ->     begin
    ->      case
    ->      when score>=90 and score<=100 then select'A';
    ->      when score>=80  then select'B';
    ->      when score>=70  then select'C';
    ->      else select 'D';
    ->      end case;
    ->      end $
Query OK, 0 rows affected (0.11 sec)

mysql> call test_case(98)$
+---+
| A |
+---+
| A |
+---+
1 row in set (0.01 sec)

Query OK, 0 rows affected (0.01 sec)

案例2:創(chuàng)建存儲過程,根據(jù)傳入的成績掩浙,來顯示等級花吟,比如傳入的成績:90——100.返回A...

mysql> create function test_if(score int) returns char
   -> begin
   -> if score>=90 and score<=100 then return 'A';
   -> elseif score>=80 then return 'B';
   ->  elseif score>=70 then return 'C';
   -> else return 'D';
   -> end if;
   -> end $
Query OK, 0 rows affected (0.16 sec)

mysql> select test_if(85)$
+-------------+
| test_if(85) |
+-------------+
| B           |
+-------------+
1 row in set, 1 warning (0.00 sec)

二.循環(huán)結(jié)構(gòu)

1.while
 語法:
 【標(biāo)志:】while 循環(huán)條件 do
         循環(huán)體;
  end while【標(biāo)志】厨姚;
  
2.loop
  語法:
  【標(biāo)志:】loop
         循環(huán)體衅澈;
  end loop【標(biāo)志】;
  可以模擬簡單的死循環(huán)
  
  3.repeat
   語法:
   【標(biāo)志:】repeat
       循環(huán)體遣蚀;
    until 結(jié)束循環(huán)的條件
    end repeat【標(biāo)志】矾麻;

嗯??,這次的mysql學(xué)習(xí)就在這先告一段落芭梯,么么险耀。

注:這是本人的學(xué)習(xí)筆記及練習(xí),如果有錯誤的地方望指出一起討論玖喘,謝謝甩牺!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市累奈,隨后出現(xiàn)的幾起案子贬派,更是在濱河造成了極大的恐慌急但,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,248評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件搞乏,死亡現(xiàn)場離奇詭異波桩,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)请敦,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評論 2 381
  • 文/潘曉璐 我一進(jìn)店門镐躲,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人侍筛,你說我怎么就攤上這事萤皂。” “怎么了匣椰?”我有些...
    開封第一講書人閱讀 153,443評論 0 344
  • 文/不壞的土叔 我叫張陵裆熙,是天一觀的道長。 經(jīng)常有香客問我禽笑,道長入录,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,475評論 1 279
  • 正文 為了忘掉前任蒲每,我火速辦了婚禮纷跛,結(jié)果婚禮上喻括,老公的妹妹穿的比我還像新娘邀杏。我一直安慰自己,他們只是感情好唬血,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,458評論 5 374
  • 文/花漫 我一把揭開白布望蜡。 她就那樣靜靜地躺著,像睡著了一般拷恨。 火紅的嫁衣襯著肌膚如雪脖律。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,185評論 1 284
  • 那天腕侄,我揣著相機(jī)與錄音小泉,去河邊找鬼。 笑死冕杠,一個胖子當(dāng)著我的面吹牛微姊,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播分预,決...
    沈念sama閱讀 38,451評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼兢交,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了笼痹?” 一聲冷哼從身側(cè)響起配喳,我...
    開封第一講書人閱讀 37,112評論 0 261
  • 序言:老撾萬榮一對情侶失蹤酪穿,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后晴裹,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體被济,經(jīng)...
    沈念sama閱讀 43,609評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,083評論 2 325
  • 正文 我和宋清朗相戀三年涧团,在試婚紗的時候發(fā)現(xiàn)自己被綠了溉潭。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,163評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡少欺,死狀恐怖喳瓣,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情赞别,我是刑警寧澤畏陕,帶...
    沈念sama閱讀 33,803評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站仿滔,受9級特大地震影響惠毁,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜崎页,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,357評論 3 307
  • 文/蒙蒙 一鞠绰、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧飒焦,春花似錦蜈膨、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至休雌,卻和暖如春灶壶,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背杈曲。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評論 1 261
  • 我被黑心中介騙來泰國打工驰凛, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人担扑。 一個月前我還...
    沈念sama閱讀 45,636評論 2 355
  • 正文 我出身青樓恰响,卻偏偏與公主長得像,于是被迫代替她去往敵國和親魁亦。 傳聞我的和親對象是個殘疾皇子渔隶,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,925評論 2 344

推薦閱讀更多精彩內(nèi)容