Hi Thomas,
I'm looking for the syntax diagram for MySQL and can't find it. I have
Just to give you a complete answer to your question, this is what is valid (I've stripped out the C code parts to leave just the definition):
where_clause: /* empty */ | WHERE expr
expr: expr_expr | simple_expr
expr_expr: expr IN_SYM '(' expr_list ')' | expr NOT IN_SYM '(' expr_list ')' | expr BETWEEN_SYM no_and_expr AND expr | expr NOT BETWEEN_SYM no_and_expr AND expr | expr OR_OR_CONCAT expr | expr OR expr | expr XOR expr | expr AND expr | expr LIKE simple_expr opt_escape | expr NOT LIKE simple_expr opt_escape | expr REGEXP expr | expr NOT REGEXP expr | expr IS NULL_SYM | expr IS NOT NULL_SYM | expr EQ expr | expr EQUAL_SYM expr | expr GE expr | expr GT_SYM expr | expr LE expr | expr LT expr | expr NE expr | expr SHIFT_LEFT expr | expr SHIFT_RIGHT expr | expr '+' expr | expr '-' expr | expr '*' expr | expr '/' expr | expr '|' expr | expr '^' expr | expr '&' expr | expr '%' expr | expr '+' INTERVAL_SYM expr interval | expr '-' INTERVAL_SYM expr interval
simple_expr:
simple_ident
| literal
| '@' ident_or_text SET_VAR expr
| '@' ident_or_text
| '@' '@' opt_var_ident_type ident_or_text
| sum_expr
| '-' expr %prec NEG
| '~' expr %prec NEG
| NOT expr %prec NEG
| '!' expr %prec NEG
| '(' expr ')'
| '{' ident expr '}'
| MATCH ident_list_arg AGAINST '(' expr ')'
| MATCH ident_list_arg AGAINST '(' expr IN_SYM BOOLEAN_SYM MODE_SYM ')'
| BINARY expr %prec NEG
Maybe this is more along the lines of what you're looking for...
<snip all of the random functions>
Regards,
Jeremy
-- Jeremy Cole Technical Yahoo - MySQL (Database) Geek
-- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]