08.09.2017 16:55, Mark Rotteveel wrote:

%type <recSourceNode> table_primary
table_primary
     : table_proc
     | derived_table
     | '(' joined_table ')'
     ;

IMHO, it wouldn't look logical to support LATERAL for "table_proc" but disallow it for "joined table".

But LATERAL **is** a table_primary, it doesn't **use** table_primary (at least not until you dive down into the select_expr), the rule would become

I understood that you suggested to allow "LATERAL table_proc" (for procedures). "LATERAL derived_table" is by standard, no questions here. But you suggested to disallow "LATERAL ( joined_table )". This is what I see as inconsistent. I'd rather disallow LATERAL for both non-standard rules, or allow it for both.

%type <recSourceNode> table_primary
table_primary
     : table_proc
     | derived_table
     | lateral_derived_table
     | '(' joined_table ')'
     ;

This is how I see it too.

Note that this may be an indication that I need to revise my opinion on point 3 though.

It seems so ;-)


Dmitry


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to