濮阳杆衣贸易有限公司

主頁 > 知識庫 > mysql存儲過程之if語句用法實例詳解

mysql存儲過程之if語句用法實例詳解

熱門標簽:常州網(wǎng)絡(luò)外呼系統(tǒng)開發(fā) 安徽ai電話電銷機器人有效果嗎 走過哪個省地圖標注 在哪里申請400電話 萊西市地圖標注 巫師三血與酒地圖標注 外呼系統(tǒng)電銷受騙 400電話申請信用卡 銷售語音電話機器人

本文實例講述了mysql存儲過程之if語句用法。分享給大家供大家參考,具體如下:

mysql中的 IF語句允許我們根據(jù)表達式的某個條件或值結(jié)果來執(zhí)行一組SQL語句,所以我們要在MySQL中形成一個表達式,可以結(jié)合文字,變量,運算符,甚至函數(shù)來組合。表達式可以返回TRUE,FALSE或NULL,這三個值之一。來看下語法結(jié)構(gòu):

IF expression THEN
  statements;
END IF;

如果上述表達式(expression)計算結(jié)果為TRUE,那么將執(zhí)行statements語句,否則控制流將傳遞到END IF之后的下一個語句。咱們來看下IF語句的執(zhí)行過程:

咱們再來看下IF ELSE語句的語法結(jié)構(gòu):

IF expression THEN
  statements;
ELSE
  else-statements;
END IF;

完事就來看IF ELSE語句的執(zhí)行過程:

我們?nèi)绻诙鄠€表達式有條件地執(zhí)行語句,則使用IF ELSEIF ELSE語句,它的語法結(jié)構(gòu)如下:

IF expression THEN
  statements;
ELSEIF elseif-expression THEN
  elseif-statements;
...
ELSE
  else-statements;
END IF;

如果表達式(expression)求值為TRUE,則IF分支中的語句(statements)將執(zhí)行;如果表達式求值為FALSE,并且elseif_expression的計算結(jié)果為TRUE,mysql將執(zhí)行elseif-expression,否則執(zhí)行ELSE分支中的else-statements語句。咱們來看下具體的執(zhí)行過程:

咱們接下來使用IF ESLEIF ELSE語句和GetCustomerLevel()存儲過程接受客戶編號和客戶級別的兩個參數(shù)。首先這個GetCustomerLevel()存儲過程得先從customers表中獲得信用額度,完事呢,根據(jù)信用額度,它決定客戶級別:PLATINUM , GOLD 和 SILVER 。參數(shù)p_customerlevel存儲客戶的級別,并由調(diào)用程序使用,咱們來看下具體的sql:

DELIMITER $$
CREATE PROCEDURE GetCustomerLevel(
  in p_customerNumber int(11),
  out p_customerLevel varchar(10))
BEGIN
  DECLARE creditlim double;
  SELECT creditlimit INTO creditlim
  FROM customers
  WHERE customerNumber = p_customerNumber;
  IF creditlim > 50000 THEN
 SET p_customerLevel = 'PLATINUM';
  ELSEIF (creditlim = 50000 AND creditlim >= 10000) THEN
    SET p_customerLevel = 'GOLD';
  ELSEIF creditlim  10000 THEN
    SET p_customerLevel = 'SILVER';
  END IF;
END$$

確定客戶級別的邏輯的流程圖如下:

好啦,本次分享就到這里了。

更多關(guān)于MySQL相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《MySQL存儲過程技巧大全》、《MySQL常用函數(shù)大匯總》、《MySQL日志操作技巧大全》、《MySQL事務(wù)操作技巧匯總》及《MySQL數(shù)據(jù)庫鎖相關(guān)技巧匯總》

希望本文所述對大家MySQL數(shù)據(jù)庫計有所幫助。

您可能感興趣的文章:
  • MySQL存儲過程的創(chuàng)建、調(diào)用與管理詳解
  • MySQL存儲過程的查詢命令介紹
  • MySQL存儲過程in、out和inout參數(shù)示例和總結(jié)
  • MySQL修改存儲過程的詳細步驟
  • Mysql 存儲過程中使用游標循環(huán)讀取臨時表
  • Mysql修改存儲過程相關(guān)權(quán)限問題
  • MySQL存儲過程的深入講解(in、out、inout)
  • MySQL之存儲過程按月創(chuàng)建表的方法步驟
  • 淺談MySql 視圖、觸發(fā)器以及存儲過程
  • MySQL 存儲過程的優(yōu)缺點分析

標簽:鞍山 河北 煙臺 赤峰 來賓 陽江 黃石 果洛

巨人網(wǎng)絡(luò)通訊聲明:本文標題《mysql存儲過程之if語句用法實例詳解》,本文關(guān)鍵詞  mysql,存儲,過程,之,語句,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《mysql存儲過程之if語句用法實例詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于mysql存儲過程之if語句用法實例詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    济宁市| 太康县| 张家港市| 西乌| 鄯善县| 满城县| 淮安市| 西贡区| 海丰县| 长泰县| 武宁县| 双峰县| 河北省| 宜城市| 车致| 广南县| 南乐县| 隆化县| 荥经县| 平远县| 芦山县| 临清市| 灌南县| 阿拉善盟| 安福县| 涞水县| 虹口区| 河津市| 图们市| 金门县| 陆川县| 巨野县| 湘乡市| 聂荣县| 拜泉县| 梓潼县| 阳东县| 纳雍县| 呈贡县| 开原市| 海伦市|