คุณสามารถใช้ IF ใน Stored Procedure และ IF() ในคำสั่ง select ได้เช่นกัน
IF() ในคำสั่ง select
IF() ในคำสั่ง select mysql> select if(0=0,'Hello MySQL','condition is wrong');
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อน>+--------------------------------------------- --------+| if('test'='test','Hello MySQL','condition is wrong') |+-------------------------- ----------------------------+| สวัสดี MySQL |+--------------------------------------------- --------+1 แถวในชุด (0.00 วินาที)กรณีที่สองหากอาการของคุณผิดปกติ -
mysql> เลือกถ้า (1=0,'สวัสดี MySQL','เงื่อนไขไม่ถูกต้อง');
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+---------------------------------------------+| ถ้า (1=0,'สวัสดี MySQL','เงื่อนไขไม่ถูกต้อง') |+------------------------------------ --------------+| เงื่อนไขไม่ถูกต้อง |+---------------------------------------------+ 1 แถวในชุด (0.00 วินาที)หากอยู่ในขั้นตอนการจัดเก็บ
แบบสอบถามเพื่อสร้างกระบวนงานที่เก็บไว้มีดังนี้ เราใช้ IF เพื่อกำหนดเงื่อนไข -
mysql> DELIMITER //mysql> CREATE PROCEDURE if_demo (value int) BEGIN IF 1=value จากนั้นเลือก "สวัสดี MySQL"; ELSE เลือก "ผิดเงื่อนไข"; สิ้นสุดถ้า; END //แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.20 วินาที) mysql> DELIMITER;
ตอนนี้คุณสามารถเรียกกระบวนงานที่เก็บไว้โดยใช้คำสั่งโทร
mysql> โทร if_demo(1);
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+-------------+| สวัสดี MySQL |+-------------+| สวัสดี MySQL |+-------------+1 แถวในชุด (0.00 วินาที) แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.01 วินาที)หากเงื่อนไขของคุณกลายเป็นเท็จ -
mysql> โทร if_demo(0);
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+-----------------+| ผิดเงื่อนไข |+-----------------+| ผิดเงื่อนไข |+-----------------+1 แถวในชุด (0.00 วินาที)แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.01 วินาที)