Skip to content

Inconsistent column names returned from the execute method #30

Description

@ChunxuTang

The current execute_simple method

  • returns unqualified column names (e.g. RETURN p.name -> name) for simple node queries and explicit AS queries
  • but returns qualified column names (e.g. RETURN p.name, c.name -> p__name, c__company_name) for relationship queries.

To make it aligned with DataFusion's practice, we should return consistent column names (e.g. p.name) for all scenarios.

For example,
MATCH (p:Person)-[:WORKS_FOR]->(c:Company) RETURN DISTINCT c.company_name should return column name c.company_name, instead of c__company_name or company_name.

A useful reference is the implementation in the DataFusion planner: https://github.com/lance-format/lance-graph/blob/main/rust/lance-graph/src/datafusion_planner/expression.rs#L217

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions