Skip to content

Inconsistency between this and this.* #6044

Description

@kgutwin

What's up?

My assumption has been that this refers to the current relation at any given point in a pipeline, and that this.* is more precisely a tuple that contains references to all of the current columns at that point in the pipeline. However, I recently found some curious behavior - this seems to behave as I expect, while this.* reflects the known columns from the original source relation.

from foo
select { a, b, c = a + b }
select this

results in:

SELECT
  a,
  b,
  a + b AS c
FROM
  foo

-- Generated by PRQL compiler version:0.13.13 (https://prql-lang.org)

while:

from foo
select { a, b, c = a + b }
select this.*

results in:

SELECT
  a,
  b
FROM
  foo

-- Generated by PRQL compiler version:0.13.13 (https://prql-lang.org)

Is there intentionally a distinction between this and this.*? Or is this a bug that results from the implementation of the .* wildcard handling on relations?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    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