MySQLストアドプロシージャでNULLまたは空の変数を確認します
NULLまたは空の変数をチェックするには、IF条件を使用します。ストアドプロシージャを作成しましょう-
mysql> delimiter // mysql> create procedure checkingForNullDemo(Name varchar(20)) begin if Name is NULL OR Name='' then select 'Adam Smith'; else select Name; end if ; end // Query OK, 0 rows affected (0.00 sec) mysql> delimiter ;
ケース1
NULLが渡されたとき。 callコマンドを使用してストアドプロシージャを呼び出します
mysql> call checkingForNullDemo(NULL);
これにより、次の出力が生成されます-
+------------+ | Adam Smith | +------------+ | Adam Smith | +------------+ 1 row in set (0.00 sec) Query OK, 0 rows affected, 1 warning (0.00 sec)
ケース2
値が渡されたとき。 callコマンドを使用してストアドプロシージャを呼び出します
mysql> call checkingForNullDemo('John Doe');
これにより、次の出力が生成されます-
+----------+ | Name | +----------+ | John Doe | +----------+ 1 row in set (0.00 sec) Query OK, 0 rows affected (0.00 sec)
-
MySQLのNULL値の場合は1を表示します
まずテーブルを作成しましょう- mysql> create table DemoTable1963 ( Counter int ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1963 values(20); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1963
-
列の値をMySQLストアドプロシージャの変数に格納します
変数を宣言するには、MySQLストアドプロシージャでDECLAREを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable2034 -> ( -> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> StudentName varchar(20), -> StudentAge int -> ); Query OK, 0 rows