jsonb
フィールドの配列(jsonオブジェクト 'choice_values')にアクセスしています。その内容をコンマ区切りのテキストフィールドに解析します。 jsonb_array_elements機能は、私は単一のフィールド内に含まれる配列値のカンマ区切りリストに変換したい「SETOFテキスト」を返すことjsonb_array_elementsの結果をコンマ区切りのリストとして返します
SELECT
jsonb_array_elements(doc -> 'form_values' -> '8189' -> 'choice_values')
FROM
field_data.exports;
。
ありがとうございます。
はい私はその質問で、申し訳ありません。何らかの理由で、string_agg関数はjsonb_array_elements()の結果を "setof text"ではなく "jsonb"の型として見ます。ここにエラーがあります: "ErrorMessage:function string_agg(jsonb、text)が存在しません" – Joebocop
私はあなたの質問にも何か見落としました。 'jsonb_array_elements_text'([PG 9.4で追加](https://www.postgresql.org/docs/9.4/static/functions-json.html))を使用して、' jsonb'ではなく 'setof text'を取得する必要があります。出力。 –
何かの理由でPG 9.3を使用する必要がある場合は、私がリンクしている他の質問を参照してください。いくつかの回避策があります。 –