2009-08-12 9 views
4

パート:それはコラム(a.lid)で文字列を連結していますので、pgsqlでのCONCAT()の機能私はpgSQLのに変換しようとしているMySQLのクエリの(ほぼ)

LEFT JOIN {$_TABLES['comments']} c ON c.sid = concat('fileid_' ,a.lid) 

これは厄介です、 SQL 92ではサポートされていません。演算子(重要!)。任意のアイデアのpgSQLのクエリのこの部分をやり直す方法は?

+1

私はどこにあなたが考えを得るのか分かりません。演算子は文字列を列と連結できません。これが真実であれば、オペレータはかなり役に立たなくなるでしょう。 –

答えて

5

オペランドの少なくとも1つが文字列である限り、PostgreSQL 8.3以降は演算子||をサポートします。文字列リテラルの列の連結も同様に機能します。どのバージョンを使用していますか?

+0

さて、私は古いバージョンでそれを試していた。 –

+0

マニュアルによると、 '||'文字列連結演算子は、バージョン7.4(オンラインドキュメントの最も古いバージョン)などの古いバージョンでもサポートされています。 –

+0

整数型は常に次のようにキャストできます。 'file_id' || CAST(ASテキスト) –

1

nullを他のものに連結すると、すべてがnullになることに注意してください。

+0

正しい。それがこの質問に関係しているかどうかは分かりません。 –

関連する問題