データベース - pgAdmin - パラメータ


クラウディア 


1. 概要
2. 構文
3. 参考サイト

1. 概要

 「ChatGPT」くんに、「pgAdmin でバインド変数を設定する方法を教えて」と尋ねたら、注意されました。
pgAdmin 4 で「バインド変数」という用語を Oracle のように考えていると少し混乱すると思います。
PostgreSQL には「バインド変数」という仕組みはなく、代わりに パラメータ付きクエリ を使う場合はアプリケーション側(例えば Python, Java, PHP などのクライアントドライバ)で行います。
 ですと。  「postgreSQL」の場合は、バインド変数でなく、パラメータと言うべきようです。

2. 構文

 例えば、都道府県コードと名称のテーブルがあります。

select * from pref;
 すると、こんな感じ。

 これを、都道府県コードをパラメータとして、「select」するとすれば。


with vars as
(
  select '02'::text as code
)
select distinct * from pref
where code = (select code from vars);
 ちょっと面倒ではありますが、これで、なんとか・・・。  「distinct」なくてもいけそうなもんですが、ないと複数行とれちゃうので、苦し紛れです。

 これで、「'02'」の中身を書き換えていけば、まぁ、思いに近いことはできるわけです。

3. 参考サイト

 本ページは、「ChatGPT」くんを参考にさせていただきました。

AbemaTV 無料体験