Expressões compostas
Uma expressão composta é uma série de expressões simples juntadas por operadores aritméticos. Uma expressão simples usada em uma expressão composta deve retornar um valor numérico.
Sintaxe
expression operator expression | (compound_expression)
Argumentos
- expressão
-
Uma expressão simples que avalia para um valor.
- operador
-
Uma expressão aritmética composta pode ser construída usando os seguintes operadores, nesta ordem de precedência:
-
( ) : parênteses para controlar a ordem de avaliação
-
+ , - : sinal/operador positivo e negativo
-
^ , |/ , ||/ : potenciação, raiz quadrada, raiz cúbica
-
* , / , % : multiplicação, divisão e operadores de módulo
-
@ : valor absoluto
-
+ , - : adição e subtração
-
& , |, #, ~, <<, >> : AND, OR, NOT, shift esquerda, shift direita
-
||: concatenação
-
- (compound_expression)
-
Expressões compostas podem ser aninhadas usando parênteses.
Exemplos
Exemplos de expressões compostas incluem o seguinte:
('SMITH' || 'JONES') sum(x) / y sqrt(256) * avg(column) rank() over (order by qtysold) / 100 (select (pricepaid - commission) from sales where dateid = 1882) * (qtysold)
Algumas funções também podem ser aninhadas em outras funções. Por exemplo, qualquer função escalar pode aninhar-se em outra função escalar. O seguinte exemplo retorna a soma dos valores absolutos de um conjunto de números:
sum(abs(qtysold))
Funções da janela não podem ser usadas como argumentos para funções agregadas ou outras funções da janela. A seguinte expressão retornaria um erro:
avg(rank() over (order by qtysold))
Funções da janela podem ter uma função agregada aninhada. A seguinte expressão soma conjuntos de valores e depois os classifica:
rank() over (order by sum(qtysold))