Skip to content

ADQL left-joins should be translated to equivalent nested when possible #16

@gitosaurus

Description

@gitosaurus

Feature request

The following ADQL:

SELECT * FROM ppdb.DiaSource ds 
LEFT JOIN ppdb.DiaObject dob ON dob.diaObjectId = ds.diaObjectId
WHERE dob.diaObjectId=24624704620855420

can be done with nothing more than

compute(ppdb.id_search(values={"diaObjectId": 24624704620855420}))

because ppdb already has the joined data nested. While the translation is straightforward, the tricky part is recognizing that it's possible. Nested catalogs served by the TAP server may need to have enough metadata that queries with a LEFT JOIN that accomplish nesting can be simplified as above.

Before submitting
Please check the following:

  • I have described the purpose of the suggested change, specifying what I need the enhancement to accomplish, i.e. what problem it solves.
  • I have included any relevant links, screenshots, environment information, and data relevant to implementing the requested feature, as well as pseudocode for how I want to access the new functionality.
  • If I have ideas for how the new feature could be implemented, I have provided explanations and/or pseudocode and/or task lists for the steps.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions