次のクエリがあります。
query =
"SELECT
data #>> '{id}' AS id,
data #>> '{name}' AS name,
data #>> '{curator}' AS curator,
data #> '{$isValid}' AS \"$isValid\",
data #> '{customer}' AS customer,
data #> '{$createdTS}' AS \"$createdTS\",
data #> '{$updatedTS}' AS \"$updatedTS\",
data #> '{$isComplete}' AS \"$isComplete\",
(count(keys))::numeric as \"numProducts\",
created_at
FROM
appointment_intakes,
LATERAL jsonb_object_keys(data #> '{products}') keys
INNER JOIN
appointment_intake_users
ON
appointment_intake_users.appointment_intake_id = appointment_intakes.id
#{where_clause}
GROUP BY id"
そして、それは次のエラーを引き起こしています:
テーブル「appointment_intakes」の FROM 句エントリへの無効な参照
追加した後、エラーが発生し始めました:
LATERAL jsonb_object_keys(data #> '{products}') keys
と
(count(keys))::numeric as \"numProducts\"
製品の数を計算する必要があったためです。
このエラーが発生しないようにするにはどうすればよいですか?