0
はpostgresで
は、私のようなスキーマを持っていると言うオブジェクトメインデータが次のクエリである:はJSONオブジェクトを作成し、JSONの配列を使用して
SELECT ARRAY_AGG(x)
FROM
(
SELECT type,
count(*),
(CASE
WHEN (SELECT id
FROM items as i
WHERE i.entity_type = 'sometype'
AND i.entity_id = 234
AND i.user_id = 32
AND i.type = items.type) is not null
THEN true
ELSE false
END) AS me
FROM items
WHERE items.entity_type = 'sometype'
AND items.entity_id = 234
GROUP BY type
) as x
これは、必要な情報の配列を返します。しかし、私は上記のようにフォーマットされている必要があります:
[
{
"type": "typeA",
"count": 3,
"me": true
},
{
"type": "typeC",
"count": 3,
"me": false
},
{
"type": "typeE",
"count": 3,
"me": false
},
{
"type": "typeR",
"count": 3,
"me": true
}
]
これは、現在のフォーマット方法です。私が必要とするjsonオブジェクトを構築する方法を見つけることができませんでした。私はそれのような3つのjsonオブジェクトを得ることができました。しかし、3つのオブジェクトを1つのオブジェクトに入れ子にする必要があります。
これは完全に動作しますが、これはタイプに追加されますが、それは必要なようです。ありがとう、トンolaf。 :) – wizardofmath