4 SQL条件

この章では、1つ以上の式と論理(ブール)演算子を組み合せて条件を指定する構文について説明します。

この章の内容は次のとおりです。

SQL条件のタイプの構文

条件は、1つ以上の式と論理(ブール)演算子の組合せで指定し、TRUEFALSEまたはUNKNOWNのいずれかの値を戻します。

条件にはいくつかの書式があります。この項では、各書式の条件に対する構文を示します。副次句の構文については、「副次句」を参照してください。

関連項目:

SQL条件の詳細は、『Oracle Database SQL言語リファレンス』を参照してください。

BETWEEN条件

expr1 [ NOT ] BETWEEN expr2 AND expr3

複合条件

{ (condition)
| NOT condition
| condition { AND | OR } condition
}

EQUALS_PATH条件

EQUALS_PATH
    (column, path_string [, correlation_integer ])

EXISTS条件

EXISTS (subquery)

浮動小数点条件

expr IS [ NOT ] { NAN | INFINITE }

グループ比較条件

{ expr
     { = | != | ^= | <> | > | < | >= | <= }
     { ANY | SOME | ALL }
     ({ expression_list | subquery })
| ( expr [, expr ]... )
  { = | != | ^= | <> }
  { ANY | SOME | ALL }
  ({ expression_list
     [, expression_list ]...
   | subquery
   }
  )
}

!= ^=および<>は不等性テストを表します。

IN条件

{ expr [ NOT ] IN ({ expression_list | subquery })
| ( expr [, expr ]... )
    [ NOT ] IN ({ expression_list [, expression_list ]...
                | subquery
                }
               )
}

IS A SET条件

nested_table IS [ NOT ] A SET

IS ANY条件

[ dimension_column IS ] ANY

IS EMPTY条件

nested_table IS [ NOT ] EMPTY

IS JSON条件

expr IS [ NOT ] JSON [ FORMAT JSON ] [ STRICT | LAX ]
[ { WITH | WITHOUT } UNIQUE KEYS ]

IS OF type条件

expr IS [ NOT ] OF [ TYPE ]
   ([ ONLY ] [ schema. ] type
      [, [ ONLY ] [ schema. ] type ]...
   )

IS PRESENT条件

cell_reference IS PRESENT

JSON_EQUAL条件

JSON_EQUAL ( (expr), (expr) )

JSON_EXISTS条件

JSON_EXISTS( expr [ FORMAT JSON ], JSON_basic_path_expression
  [ JSON_passing_clause ] [ JSON_exists_on_error_clause ] [ JSON_exists_on_empty_clause ] )

JSON_TEXTCONTAINS条件

JSON_TEXTCONTAINS( column, JSON_basic_path_expression, string )

LIKE条件

char1 [ NOT ] { LIKE | LIKEC | LIKE2 | LIKE4 }
  char2 [ ESCAPE esc_char ]

論理条件

{ NOT | AND | OR }

MEMBER条件

expr [ NOT ] MEMBER [ OF ] nested_table

NULL条件

expr IS [ NOT ] NULL

REGEXP_LIKE条件

REGEXP_LIKE(source_char, pattern
            [, match_param ]
           )

単純比較条件

{ expr 
  { = | != | ^= | <> | > | < | >= | <= }
  expr
| (expr [, expr ]...)
  { = | != | ^= | <> }
  ( expression_list | subquery )
}

!= ^=および<>は不等性テストを表します。

SUBMULTISET条件

nested_table1
[ NOT ] SUBMULTISET [ OF ]
nested_table2

UNDER_PATH条件

UNDER_PATH (column [, levels ], path_string
             [, correlation_integer ]
           )