Return value from a function : Function Returning « 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 » Function Returning 
Return value from a function
  
mysql>
mysql> delimiter $$
mysql>
mysql> CREATE FUNCTION myFunction(
    ->         in_title VARCHAR(4),
    ->         in_gender CHAR(1),
    ->         in_firstname     VARCHAR(20),
    ->         in_middle_initial CHAR(1),
    ->         in_surname       VARCHAR(20))
    ->
    ->   RETURNS VARCHAR(60)
    -> BEGIN
    ->   DECLARE l_title               VARCHAR(4);
    ->   DECLARE l_name_string         VARCHAR(60);
    ->
    ->   IF ISNULL(in_title)  THEN
    ->      IF in_gender='M' THEN
    ->         SET l_title='Mr';
    ->      ELSE
    ->         SET l_title='Ms';
    ->      END IF;
    ->   END IF;
    ->
    ->   IF ISNULL(in_middle_initialTHEN
    ->      SET l_name_string=CONCAT(l_title,' ',in_firstname,' ',in_surname);
    ->   ELSE
    ->      SET l_name_string=CONCAT(l_title,' ',in_firstname,' ',
    ->                           in_middle_initial,' ',in_surname);
    ->   END IF;
    ->
    ->   RETURN(l_name_string);
    -> END$$
Query OK, rows affected (0.00 sec)

mysql>
mysql> delimiter ;
mysql>
mysql> select myFunction('Mrs','M','First','Middle','Last');
+-----------------------------------------------+
| myFunction('Mrs','M','First','Middle','Last') |
+-----------------------------------------------+
| NULL                                          |
+-----------------------------------------------+
row in set, warning (0.00 sec)

mysql>
mysql>
mysql> select myFunction(null,'M','First','Middle','Last');
+----------------------------------------------+
| myFunction(null,'M','First','Middle','Last') |
+----------------------------------------------+
| Mr First M Last                              |
+----------------------------------------------+
row in set, warning (0.00 sec)

mysql>
mysql> drop function myFunction;
Query OK, rows affected (0.00 sec)

mysql>
mysql>

          
  
Related examples in the same category
1.Return integer value from a function
2.Return NUMERIC(8,2) from a function
3.Check function parameter and return value
4.Using the returning value from a user-defined function in order by clause
5.Returning Decimal from the function
6.function returnes int
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.