より長続きするブログ

続けていきたい気持ち。

PostgreSQLのconcat()関数についての備忘録

文字列結合をするときは、||演算子を使って行うのがSQL的ではあるが、
こいつはNullが入ると結果文字列もNullになってしまう。
その方がいい場合もあると思うが、大抵の場合はNullは空文字と見做して欲しい。
そういうときはconcat()を使うとそのように計らってくれる。

MySQLのときは両方とも結合結果はNullだったので、
どちらにせよcoalesce()でNull排除して使う必要があったはずだけど、
Postgreでは関数一つで対応されている。

ただし対応バージョンは9.1以降らしい(9.1からドキュメントに登場する)。
まあ4年前にリリースされたバージョンなのだから、使えることの方が多いでしょう。

以上、concat()使えない仕事をしながらの発見でした。

参考URL
PostgreSQL: Documentation: 9.1: String Functions and Operators

PostgreSQL: Documentation: 9.0: String Functions and Operators

MySQL :: MySQL 5.7 Reference Manual :: 12.5 String Functions