Progress
SQL-92
Guide and Reference


Search Conditions Syntax in BNF

SEARCH CONDITION

SYNTAX
search_condition ::=
[ NOT ] predicate 
  [ { AND | OR } { predicate | ( search_condition ) } ] 

PREDICATE

SYNTAX
predicate ::=
basic_predicate
  | quantified_predicate
  | between_predicate
  | null_predicate
  | like_predicate
  | exists_predicate
  | in_predicate
  | outer_join_predicate 

RELATIONAL OPERATOR

SYNTAX
relop ::=
=  | <> | != | ^= | < | <= | > | >= 

BASIC PREDICATE

SYNTAX
basic_predicate ::=
expr relop { expr | ( query_expression ) } 

QUANTIFIED PREDICATE

SYNTAX
quantified_predicate ::=
expr relop { ALL | ANY | SOME } ( query_expression ) 

BETWEEN PREDICATE

SYNTAX
between_predicate ::=
expr [ NOT ] BETWEEN expr AND expr 

NULL PREDICATE

SYNTAX
null_predicate ::=
column_name IS [ NOT ] NULL 

LIKE PREDICATE

SYNTAX
like_predicate ::=
column_name [ NOT ] LIKE string_constant 
  [ ESCAPE escape_character ] 

EXISTS PREDICATE

SYNTAX
exists_predicate ::=
EXISTS (query_expression) 

IN PREDICATE

SYNTAX
in_predicate ::=
expr [ NOT ] IN
  { (query_expression) | (constant , constant [ , ... ] ) } 

OUTER JOIN PREDICATE

SYNTAX
outer_join_predicate ::=
[ table_name.]column = [ table_name.]column (+)
  | [ table_name.]column (+) = [ table_name.]column 


Copyright © 2004 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095