Django+PostgreSQLでcursorで変数としてListを指定したいとき

今回はDjango+PostgreSQLの環境でcursorで生のSQLを流す際に変数としてListを入れてあげたい場合はどのようにするかについてご紹介いたします。



Django+PostgreSQLでcursorで変数としてListを指定したいとき

あくまで例ですが、下記のような生のSQLをDjango+PostgreSQL環境で流したいとします。

しかし、これではSQLでエラーが出てしまいます。

Django+PostgreSQL環境の場合、Listを変数として渡してあげると内部で

のような変換がされてしまいます。

サンプルの例だと、

のようなSQLが発行されてしまうわけです。

結論を言うと、Listを変数として渡してあげるパターンがある場合はSQLでANY句を用いて検索などするようにしましょう。

終わりに

今回はDjango+PostgreSQLの環境でcursorで生のSQLを流す際に変数としてListを入れてあげたい場合はどのようにするかについてご紹介いたしました。

最後までお読みいただきありがとうございます。
よろしければブログやTwitterでのシェアをお願いしております。
コメントもお待ちしております。
誤植や勘違いなどございましたらコメント欄にて教えていただけると幸いです。

直接契約ができるフリーランスエージェント「エンハンス」を立ち上げました。
詳しくは下記LPをご参照ください。
https://enhance.decryption.co.jp/

Youtubeチャンネル開設いたしました。
チャンネル登録者10,000人を目指しているので、良いと思った方はチャンネル登録をお願いしたいです。
https://www.youtube.com/channel/UC219XhmSRxmXltTy6COxSMw






PostgreSQL

Posted by ちこ