2
SELECT select_option outer_select_item
4
WHERE subquery_expression AND outer_condition_top
5
outer_having outer_order_by ;
8
OUTR . field_name AS X |
9
aggregate_function OUTR . field_name ) AS X;
13
COUNT(DISTINCT | COUNT( |
16
STD( | STDDEV_POP( | STDDEV_SAMP( |
18
VAR_POP( | VAR_SAMP( | VARIANCE( |
21
aggregate_function_disabled_unpredictable_value:
25
outer_table_name AS OUTR |
26
outer_table_name AS OUTR2 LEFT JOIN outer_table_name AS OUTR ON ( outer_join_condition );
29
OUTR2 . int_field_name arithmetic_operator OUTR . int_field_name |
30
OUTR2 . date_field_name arithmetic_operator OUTR . date_field_name |
31
OUTR2 . char_field_name arithmetic_operator OUTR . char_field_name ;
34
ORDER BY OUTR . field_name , OUTR . `pk` ;
37
| GROUP BY OUTR . field_name ;
40
| HAVING X arithmetic_operator value;
42
outer_having_disabled_bug38072:
43
| HAVING X arithmetic_operator value ;
50
WHERE inner_condition_top
54
SELECT select_option inner_select_item
58
| ORDER BY INNR . field_name ;
61
INNR . int_field_name AS Y ;
64
inner_table_name AS INNR |
65
inner_table_name AS INNR2 LEFT JOIN inner_table_name AS INNR ON ( inner_join_condition );
68
INNR2 . int_field_name arithmetic_operator INNR . int_field_name |
69
INNR2 . char_field_name arithmetic_operator INNR . char_field_name |
70
INNR2 . date_field_name arithmetic_operator INNR . date_field_name ;
73
outer_condition_bottom |
74
( outer_condition_bottom logical_operator outer_condition_bottom ) |
75
outer_condition_bottom logical_operator outer_condition_bottom ;
77
outer_condition_bottom:
81
field_name null_operator |
82
int_field_name int_expression |
83
date_field_name date_expression |
84
char_field_name char_expression ;
87
arithmetic_operator digit ;
90
arithmetic_operator date | BETWEEN date AND date;
93
arithmetic_operator _varchar(1);
98
inner_condition_bottom logical_operator inner_condition_bottom |
99
inner_condition_bottom logical_operator outer_condition_bottom ;
101
inner_condition_bottom:
103
INNR . int_field_name arithmetic_operator INNR . int_field_name |
104
INNR . date_field_name arithmetic_operator INNR . date_field_name |
105
INNR . char_field_name arithmetic_operator INNR . char_field_name ;
107
null_operator: IS NULL | IS NOT NULL ;
110
AND | OR | OR NOT | XOR | AND NOT ;
113
= | > | < | <> | >= | <= ;
116
OUTR . int_field_name IN ( SELECT select_option INNR . int_field_name AS Y select_inner_body ) |
117
OUTR . char_field_name IN ( SELECT select_option INNR . char_field_name AS Y select_inner_body ) |
118
( OUTR . int_field_name , OUTR . int_field_name ) IN ( SELECT select_option INNR . int_field_name AS X , INNR . int_field_name AS Y select_inner_body ) |
119
( OUTR . char_field_name , OUTR . char_field_name ) IN ( SELECT select_option INNR . char_field_name AS X , INNR . char_field_name AS Y select_inner_body ) ;
122
int_field_name | char_field_name | date_field_name;
125
`pk` | `int_key` | `int_nokey` ;
128
`date_key` | `date_nokey` | `datetime_key` | `datetime_nokey` | `time_key` | `time_nokey` ;
131
`varchar_key` | `varchar_nokey` ;
139
value: _digit | _date | _time | _datetime | _varchar(1) | NULL ;