Using CASE WHEN condition statement in a procedure : CASE « Procedure Function « SQL / MySQL

Home
SQL / MySQL
1.Aggregate Functions
2.Backup Load
3.Command MySQL
4.Cursor
5.Data Type
6.Database
7.Date Time
8.Engine
9.Event
10.Flow Control
11.FullText Search
12.Function
13.Geometric
14.I18N
15.Insert Delete Update
16.Join
17.Key
18.Math
19.Procedure Function
20.Regular Expression
21.Select Clause
22.String
23.Table Index
24.Transaction
25.Trigger
26.User Permission
27.View
28.Where Clause
29.XML
SQL / MySQL » Procedure Function » CASE 
Using CASE WHEN condition statement in a procedure
 
mysql>
mysql> delimiter $$
mysql> CREATE PROCEDURE myProc(id int)
    -> BEGIN
    ->
    ->     CASE
    ->          WHEN id < 2  THEN
    ->               select 'less than 2';
    ->
    ->          WHEN id > and id < THEN
    ->               select 'greater than and less than 5';
    ->
    ->          WHEN id > THEN
    ->               select 'greater than 5';
    ->
    ->     END CASE;
    -> END$$
Query OK, rows affected (0.00 sec)

mysql>
mysql> delimiter ;
mysql> call myProc(2);
ERROR 1339 (20000): Case not found for CASE statement
mysql> call myProc(20);
+----------------+
| greater than |
+----------------+
| greater than |
+----------------+
row in set (0.00 sec)

Query OK, rows affected (0.00 sec)

mysql>
mysql> drop procedure myProc;
Query OK, rows affected (0.00 sec)

mysql>

        
Related examples in the same category
1.For checking a uniform condition you may use the CASE construct
2.CASE Statement with Condition Checks
3.Using CASE WHEN statement in a procedure
4.CASE WHEN with ELSE
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.