Memo

メモ > 技術 > データベース: MySQL > 変数を扱う

変数を扱う
MySQL :: MySQL 8.0 リファレンスマニュアル :: 13.7.6.1 変数代入の SET 構文 https://dev.mysql.com/doc/refman/8.0/ja/set-variable.html MySQL | SET文でシステム変数を変更(セッション変数, グロバール変数) - わくわくBank https://www.wakuwakubank.com/posts/413-mysql-set/ 以下のようにして、変数に値を代入&使用できる。
SET @name = 'yamada'; SELECT id FROM users WHERE name = @name;
変数は接続を終了するまで有効なので、以下のように連続して実行する際にも使用できる。
SET @target = 5; UPDATE logs SET message = 'テスト' WHERE id = @target; UPDATE logs SET message = 'テスト' WHERE id = (@target + 1); UPDATE logs SET message = 'テスト' WHERE id = (@target + 2);
以下のようにして変数の内容を確認できる。 なおQUIT(EXIT)で接続を終了し、再度変数の内容を確認するとNULLに戻る。
mysql> SELECT @target; +---------+ | @target | +---------+ | NULL | +---------+ 1 row in set (0.00 sec) mysql> SET @target = 5; Query OK, 0 rows affected (0.00 sec) mysql> SELECT @target; +---------+ | @target | +---------+ | 5 | +---------+ 1 row in set (0.00 sec)

Advertisement