初めに
Qiita Engineer Festa 2024に参加中。完走目指してます。
他のメタコマンドについては以下から読んでください。
\setとは
psqlの変数
name
をvalue
、または複数のvalueが与えられた場合はそれらを連結したものに設定します。 第一引数しか指定されない場合は、変数に空文字列の値が設定されます。 変数を未設定とするには、\unset
コマンドを使用してください。引数をまったく取らない
\set
は、現在設定されているpsql変数すべての名前と値を表示します。変数名には、文字、数字、アンダースコアを使用することができます。 詳細は、後述の変数を参照してください。 変数名は大文字小文字を区別します。
psqlの動作を制御する、あるいは接続状態を表す値に自動的に設定される、という点で特別な変数がいくつかあります。
試してみた
postgres=# \set myvar 'Alice'
postgres=# select * from employees where name = :'myvar';
id | name | department | salary
----+-------+------------+--------
1 | Alice | HR | 60000
(1 行)
まとめ
手動実行するときにバインド変数として活用しています。