Thank you for looking at this Julian.  To be clear, I’m asking if this 
statement should be supported or not.  I’m not suggesting that it should be.

Hopefully this formatting is easier to read:

SELECT *
FROM (
      VALUES (1,
              'John')) AS "customer"(c_custkey,
                                     c_name)
LEFT OUTER JOIN (
                 VALUES(100,
                        1)) AS "orders"(o_orderkey,
                                        o_custkey)
INNER JOIN (
            VALUES (100,
                    'Random item')) AS "lineitem"(l_orderkey,
                                                  l_itemname) ON o_orderkey = 
l_orderkey ON c_custkey = o_custkey


> On Jan 2, 2024, at 1:07 PM, Julian Hyde <[email protected]> wrote:
> 
> What is 'this syntax' you think we should support? (Your query is
> poorly formatted, so I can't see what pattern in it is confusing the
> parser.)
> 
> On Tue, Jan 2, 2024 at 11:46 AM Sean Broeder <[email protected]> wrote:
>> 
>> It looks like Calcite doesn't support the query
>> 
>> select * from (values (1, 'John')) as
>> 
>> "customer"(c_custkey, c_name)
>> 
>> left outer join (values(100, 1)) as "orders"(o_orderkey, o_custkey)
>> 
>> inner join (values (100, 'Random item')) as "lineitem"(l_orderkey,
>> l_itemname) on o_orderkey = l_orderkey
>> 
>> on c_custkey = o_custkey
>> I'm seeing a parser error
>> on c_custkey = o_custkey": parse failed: Encountered "on" at line 5, column
>> 1.
>> Was expecting one of:
>>    <EOF>
>>    "EXCEPT" ...
>> 
>> Should this syntax be supported?
>> 
>> It looks like this syntax is supported by at least postgres and sqlserver.
>> 
>> Thanks!

Reply via email to