github.com/cockroachdb/cockroach@v20.2.0-alpha.1+incompatible/docs/generated/sql/bnf/simple_select_clause.bnf (about) 1 simple_select_clause ::= 2 'SELECT' ( 'ALL' | ) ( ( target_elem ) ( ( ',' target_elem ) )* ) ( 'FROM' ( ( table_ref ) ( ( ',' table_ref ) )* ) ( ( 'AS' 'OF' 'SYSTEM' 'TIME' a_expr ) | ) | ) ( ( 'WHERE' a_expr ) | ) ( 'GROUP' 'BY' ( ( a_expr ) ( ( ',' a_expr ) )* ) | ) ( 'HAVING' a_expr | ) ( 'WINDOW' window_definition_list | ) 3 | 'SELECT' ( 'DISTINCT' ) ( ( target_elem ) ( ( ',' target_elem ) )* ) ( 'FROM' ( ( table_ref ) ( ( ',' table_ref ) )* ) ( ( 'AS' 'OF' 'SYSTEM' 'TIME' a_expr ) | ) | ) ( ( 'WHERE' a_expr ) | ) ( 'GROUP' 'BY' ( ( a_expr ) ( ( ',' a_expr ) )* ) | ) ( 'HAVING' a_expr | ) ( 'WINDOW' window_definition_list | ) 4 | 'SELECT' ( 'DISTINCT' 'ON' '(' ( ( a_expr ) ( ( ',' a_expr ) )* ) ')' ) ( ( target_elem ) ( ( ',' target_elem ) )* ) ( 'FROM' ( ( table_ref ) ( ( ',' table_ref ) )* ) ( ( 'AS' 'OF' 'SYSTEM' 'TIME' a_expr ) | ) | ) ( ( 'WHERE' a_expr ) | ) ( 'GROUP' 'BY' ( ( a_expr ) ( ( ',' a_expr ) )* ) | ) ( 'HAVING' a_expr | ) ( 'WINDOW' window_definition_list | )