4 SQL Conditions
This chapter presents the syntax for combining one or more expressions and logical (Boolean) operators to specify a condition.
This chapter includes the following section:
Syntax for SQL Condition Types
A condition specifies a combination of one or more expressions and logical (Boolean) operators and returns a value of TRUE
, FALSE
, or unknown.
Conditions have several forms. The sections that follow show the syntax for each form of condition. Refer to Subclauses for the syntax of the subclauses.
See Also:
Oracle Database SQL Language Reference for detailed information about SQL conditions
expr1 [ NOT ] BETWEEN expr2 AND expr3
{ (condition) | NOT condition | condition { AND | OR } condition }
EQUALS_PATH (column, path_string [, correlation_integer ])
EXISTS (subquery)
expr IS [ NOT ] { NAN | INFINITE }
{ expr { = | != | ^= | <> | > | < | >= | <= } { ANY | SOME | ALL } ({ expression_list | subquery }) | ( expr [, expr ]... ) { = | != | ^= | <> } { ANY | SOME | ALL } ({ expression_list [, expression_list ]... | subquery } ) }
where !=
, ^=
, and <>
test for inequality
{ expr [ NOT ] IN ({ expression_list | subquery }) | ( expr [, expr ]... ) [ NOT ] IN ({ expression_list [, expression_list ]... | subquery } ) }
nested_table IS [ NOT ] A SET
[ dimension_column IS ] ANY
nested_table IS [ NOT ] EMPTY
expr IS [ NOT ] JSON [ FORMAT JSON ] [ STRICT | LAX ] [ { WITH | WITHOUT } UNIQUE KEYS ]
expr IS [ NOT ] OF [ TYPE ] ([ ONLY ] [ schema. ] type [, [ ONLY ] [ schema. ] type ]... )
cell_reference IS PRESENT
JSON_EQUAL ( (expr), (expr) )
JSON_EXISTS( expr [ FORMAT JSON ], JSON_basic_path_expression [ JSON_passing_clause ] [ JSON_exists_on_error_clause ] [ JSON_exists_on_empty_clause ] )
JSON_TEXTCONTAINS( column, JSON_basic_path_expression, string )
char1 [ NOT ] { LIKE | LIKEC | LIKE2 | LIKE4 } char2 [ ESCAPE esc_char ]
{ NOT | AND | OR }
expr [ NOT ] MEMBER [ OF ] nested_table
expr IS [ NOT ] NULL
REGEXP_LIKE(source_char, pattern [, match_param ] )
{ expr { = | != | ^= | <> | > | < | >= | <= } expr | (expr [, expr ]...) { = | != | ^= | <> } ( expression_list | subquery ) }
where !=
, ^=
, and <>
test for inequality
nested_table1 [ NOT ] SUBMULTISET [ OF ] nested_table2
UNDER_PATH (column [, levels ], path_string [, correlation_integer ] )