I'm working with a proprietary SQL dialect that supports user-defined types
and allows queries that create values using literal expressions. I am
trying to figure out if Calcite can support this functionality.

For example, let's assume the user has defined a type named 'Person' which
has attributes 'firstName', 'lastName' and 'age'.

The SQL dialect would allow the following queries:

SELECT Person(firstName='Joe', lastName='Bloggs', age=21);

In this case I think I could use RelBuilder.literal() to create an instance.

However, the values could be relational expressions too:

SELECT Person(firstName=f.firstName., lastName=f.lastName, age=f.age)
FROM flat_table f;

Is there a concept in Calcite that would support this type of use case?

Thanks,

Andy.

--

Andy Grove
Chief Architect
AgilData - Simple Streaming SQL that Scales
www.agildata.com

Reply via email to