这是indexloc提供的服务,不要输入任何密码
Skip to content

aliasing same relationship multiple times in a query results in postgres error #278

@shahidhk

Description

@shahidhk
Query
query {
  items {
    id
    value
    related_data: related_table_values {
      data
    }
    related_id: related_table_values {
      id
    }
  }
}
Response
{
  "errors": [
    {
      "internal": {
        "statement": "SELECT  coalesce(json_agg((SELECT  \"e\"  FROM  (SELECT  \"r\".\"related_table_values\" AS \"related_data\", \"r\".\"value\" AS \"value\", \"r\".\"id\" AS \"id\", \"r\".\"related_table_values\" AS \"related_id\"       ) AS \"e\"      ) ), '[]' )  FROM  (SELECT  CASE WHEN (hdb_catalog.first(\"r\".\"__r_related_table_values_item_id\" )) IS NULL THEN '[]' ELSE json_agg((SELECT  \"e\"  FROM  (SELECT  \"r\".\"data\" AS \"data\"       ) AS \"e\"      ) ) END AS \"related_table_values\", hdb_catalog.first(\"l\".\"related_table_values\" ) AS \"related_table_values\", hdb_catalog.first(\"l\".\"value\" ) AS \"value\", hdb_catalog.first(\"l\".\"id\" ) AS \"id\", hdb_catalog.first(\"l\".\"__l_related_table_values_id\" ) AS \"__l_related_table_values_id\", hdb_catalog.first(\"l\".\"__l_related_table_values_id\" ) AS \"__l_related_table_values_id\" FROM  (SELECT  CASE WHEN (hdb_catalog.first(\"r\".\"__r_related_table_values_item_id\" )) IS NULL THEN '[]' ELSE json_agg((SELECT  \"e\"  FROM  (SELECT  \"r\".\"id\" AS \"id\"       ) AS \"e\"      ) ) END AS \"related_table_values\", hdb_catalog.first(\"l\".\"value\" ) AS \"value\", hdb_catalog.first(\"l\".\"id\" ) AS \"id\", hdb_catalog.first(\"l\".\"__l_related_table_values_id\" ) AS \"__l_related_table_values_id\", hdb_catalog.first(\"l\".\"__l_related_table_values_id\" ) AS \"__l_related_table_values_id\" FROM  (SELECT  \"value\" AS \"value\", \"id\" AS \"id\", \"id\" AS \"__l_related_table_values_id\", \"id\" AS \"__l_related_table_values_id\" FROM \"public\".\"items\"  WHERE (('true') AND (('true') AND ('true')))     ) AS \"l\" LEFT OUTER JOIN LATERAL (SELECT  \"item_id\" AS \"__r_related_table_values_item_id\", \"id\" AS \"id\" FROM \"public\".\"item_related_table\"  WHERE ((((\"l\".\"__l_related_table_values_id\") = (\"item_id\")) AND ('true')) AND (('true') AND ('true')))     ) AS \"r\" ON ('true')  GROUP BY \"l\".\"__l_related_table_values_id\"    ) AS \"l\" LEFT OUTER JOIN LATERAL (SELECT  \"item_id\" AS \"__r_related_table_values_item_id\", \"data\" AS \"data\" FROM \"public\".\"item_related_table\"  WHERE ((((\"l\".\"__l_related_table_values_id\") = (\"item_id\")) AND ('true')) AND (('true') AND ('true')))     ) AS \"r\" ON ('true')  GROUP BY \"l\".\"__l_related_table_values_id\"    ) AS \"r\"      ",
        "prepared": true,
        "error": {
          "exec_status": "FatalError",
          "hint": null,
          "message": "column reference \"__l_related_table_values_id\" is ambiguous",
          "status_code": "42702",
          "description": null
        },
        "arguments": []
      },
      "path": "$",
      "error": "postgres query error",
      "code": "postgres-error"
    }
  ]
}

[via arpitjacob#4840 on discord]

Metadata

Metadata

Labels

c/serverRelated to servere/intermediatecan be wrapped up in a weekk/bugSomething isn't workingp/highcandidate for being included in the upcoming sprints/wipStatus: This issue is a work in progress

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions