An expression is a combination of one or more values, operators, and SQL functions that evaluate to a value. An expression generally assumes the data type of its components.
Expressions have several forms. The sections that follow show the syntax for each form of expression. Refer to Chapter 5, "Subclauses" for the syntax of the subclauses.
See Also:
Expressions in Oracle Database SQL Language Reference for detailed information about SQL expressionsCASE { simple_case_expression | searched_case_expression } [ else_clause ] END
A column expression can be a simple expression, compound expression, function expression, or expression list, containing only columns of the subject table, constants, and deterministic functions.
{ (expr) | { + | - | PRIOR } expr | expr { * | / | + | - | || } expr } Note: The double vertical bars are part of the syntax (indicating concatenation) rather than BNF notation.
CURSOR (subquery)
expr AT { LOCAL | TIME ZONE { ' [ + | - ] hh:mi' | DBTIMEZONE | 'time_zone_name' | expr } }
You can use any built-in SQL function or user-defined function as an expression.
( expr1 - expr2 ) { DAY [ (leading_field_precision) ] TO SECOND [ (fractional_second_precision) ] | YEAR [ (leading_field_precision) ] TO MONTH }
{ measure_column [ { condition | expr } [, { condition | expr } ]... ] | aggregate_function { [ { condition | expr } [, { condition | expr } ]... ] | [ single_column_for_loop [, single_column_for_loop ]... ] | [ multi_column_for_loop ] } | analytic_function }
Note:
The outside square brackets shown in boldface type are part of the syntax. In this case, they do not represent optionality.{ table_alias.column. | object_table_alias. | (expr). } { attribute [.attribute ]... [.method ([ argument [, argument ]... ]) ] | method ([ argument [, argument ]... ]) }
:host_variable [ [ INDICATOR ] :indicator_variable ]
A scalar subquery expression is a subquery that returns exactly one column value from one row.
{ [ query_name. | [schema.] { table. | view. | materialized view. } ] { column | ROWID } | ROWNUM | string | number | sequence. { CURRVAL | NEXTVAL } | NULL }
[ NEW ] [ schema. ]type_name ([ expr [, expr ]... ])