0

私はPostgreSQLを初めて使用し、データベースをOracleからPostgreSQL9.2に移行する際に問題が発生します。コード内のいくつかのネイティブクエリを変更する必要があります。私は次のようなサブクエリを持っています:

SELECT wm_concat(p.first_name || ' ' || p.last_name) 
FROM TODO_PERSON PR 
JOIN PERSON P ON (p.id == pr.person_id)
WHERE todo_id = internal_table.id

PostgreSQLでは同等の機能や他の解決策を見つけることができません...

4

2 に答える 2

6

PostgreSQL には利用可能な集計関数がたくさんあります。

wm_concat区切り文字を指定する必要string_aggがあることを除いて、同等のようです。詳細については、ドキュメントを確認してください。

于 2013-01-28T16:51:55.407 に答える
-1

単なる連結です。CONCAT 関数を使用するか、パイプだけでクエリを記述できます。

したがって、最初の解決策は次のとおりです。

SELECT CONCAT(p.first_name, ' ', p.last_name) [...]

また:

SELECT p.first_name || ' ' || p.last_name [...]

結果にコンマを追加する場合は、列名の間の文字列として、ギャップの代わりにコンマを追加するだけです。すなわち:

SELECT CONCAT(p.first_name, ', ', p.last_name) [...]

クエリの最後の部分は非常に謎です。それらのブラケットは何に使用していますか?

于 2013-01-28T20:36:09.337 に答える