A sintaxe de muitas instru????es e express??es inclui o termo Express??o, ou um termo para um tipo espec??fico de express??o como SubconsultaTabela. Dentro das instru????es, s??o permitidas express??es nestes pontos especificados. Alguns locais permitem apenas um tipo espec??fico de express??o, ou uma express??o com uma propriedade espec??fica. A Tabela de Express??es lista todas as express??es SQL poss??veis, e indica onde s??o permitidas.
Tipo da express??o | Explica????o | |
---|---|---|
Express??es gerais | Todas as express??es que podem resultar em um valor de qualquer tipo. | |
Refer??ncia a coluna Permitida na Express??oSele????o, na instru????o UPDATE e na cl??usula WHERE das instru????es de manipula????o de dados. |
O nome-da-coluna
que faz refer??ncia ao valor da coluna tornado vis??vel para a express??o que
cont??m a refer??ncia a coluna.
O nome-da-coluna deve ser qualificado pelo nome da tabela ou pelo nome da correla????o se houver ambiguidade. O qualificador do nome-da-coluna deve ser o nome da correla????o, se for atribu??do nome de correla????o ?? tabela na Cl??usula FROM. O nome da tabela n??o ?? mais vis??vel como qualificador para nome-da-coluna ap??s a tabela ter recebido um ali??s pelo nome da correla????o. |
|
Constante |
A maioria dos tipos de dado nativos normalmente possuem constantes associadas aos mesmos (conforme mostrado em Tipos de dado). | |
NULL Permitido nas express??es CAST, na lista de valores do INSERT, e na cl??usula SET do UPDATE. Utilizado na express??o CAST o nulo recebe um tipo de dado espec??fico. |
NULL ?? uma constante sem tipo que representa um valor desconhecido. | |
Par??metro din??mico Permitido em qualquer lugar na express??o onde o tipo de dado pode ser facilmente deduzido. Consulte Par??metros din??micos. |
Par??metro din??mico ?? o par??metro de uma instru????o SQL
para o qual n??o ?? especificado valor quando a instru????o ?? criada.
Em vez disto, a instru????o possui um ponto de interroga????o (?) marcando a
posi????o de cada um dos par??metros din??micos.
Consulte Par??metros din??micos.
Os par??metros din??micos s??o permitidos apenas em instru????es preparadas. Devem ser especificados valores para os mesmos antes da instru????o preparada ser executada. Os valores especificados devem corresponder aos tipos esperados. |
|
Express??o CAST |
Permite especificar o tipo de dado de NULL ou de um par??metro din??mico, ou converter um valor para outro tipo de dado. Consulte CAST. | |
Subconsulta escalar |
Uma subconsulta que retorna uma ??nica linha com uma ??nica coluna. Consulte SubconsultaEscalar. | |
Subconsulta tabela Permitida como Express??oTabela na cl??usula FROM, e com EXISTS, IN e compara????es quantificadas. |
Uma subconsulta que retorna mais de uma coluna e mais de uma linha. Consulte SubconsultaTabela. | |
Express??o condicional |
A express??o condicional escolhe a express??o a ser avaliada baseado em um teste booleano. | |
Express??es booleanas | Express??es que resultam em valores booleanos.
A maioria das express??es gerais podem resultar em valores booleanos.
Geralmente as express??es booleanas usadas na cl??usula WHERE s??o feitas de operandos operados por operadores SQL. Consulte Operadores booleanos SQL. |
|
Express??es num??ricas | Express??es que resultam em valores num??ricos.
A maioria das express??es gerais podem resultar em valores num??ricos.
Os valores num??ricos possuem um dos seguintes tipos de dado: SMALLINT, INTEGER, BIGINT, REAL, DOUBLE PRECISION, DECIMAL. |
|
Express??es +, -, *, /, e + - un??rios |
+ -, *, /, e + - un??rios
Avaliam a opera????o matem??tica esperada nos operandos. Se os dois operandos forem do mesmo tipo, o tipo do resultado n??o ser?? promovido, e portanto o operador de divis??o em operandos inteiros resulta em um inteiro que ?? o truncamento do resultado num??rico real. Quando s??o misturados tipos de dado diferentes, estes s??o promovidos conforme descrito em Tipos de dado. O + un??rio ?? um n??o-operador (ou seja, +4 ?? o mesmo que 4). O - un??rio ?? o mesmo que multiplicar o valor por -1, mudando efetivamente o sinal. |
|
AVG |
Retorna a m??dia de um conjunto de valores num??ricos. AVG | |
SUM |
Retorna a soma de um conjunto de valores num??ricos. SUM | |
LENGTH |
Retorna o n??mero de caracteres em uma cadeia de caracteres ou de bits. Consulte LENGTH. | |
LOWER |
Consulte LCASE ou LOWER. | |
COUNT |
Retorna o contagem de um conjunto de valores. Consulte COUNT e COUNT(*). | |
Express??es de caractere | Express??es que resultam em um valor CHAR ou VARCHAR. A maioria das express??es gerais podem resultar em um valor CHAR ou VARCHAR. | |
Um valor CHAR ou VARCHAR que utiliza curingas. Usadas no padr??o do LIKE. |
Os caracteres curinga % e _ transformam a cadeia de caracteres em um padr??o com rela????o ao qual o operador LIKE pode procurar por uma correspond??ncia. | |
Express??o de concatena????o |
Em uma opera????o de concatena????o, o operador de concatena????o, "||", concatena seu operando ?? direita ao seu operando ?? esquerda. Opera em cadeias de caracteres e de bits. Consulte Concatena????o. | |
Fun????es de cadeia nativas |
As fun????es de cadeia nativas atuam em uma cadeia e retornam uma cadeia. Consulte LTRIM, LCASE ou LOWER, RTRIM, SUBSTR e UCASE ou UPPER | |
Fun????es USER |
As fun????es USER retornam informa????es sobre o usu??rio corrente na forma de uma cadeia de caracteres. Consulte CURRENT_USER, SESSION_USER, e USER | |
Express??es de data e hora | Uma express??o data/hora resulta em um valor do tipo DATE, TIME, ou TIMESTAMP. A maioria das express??es gerais podem resultar em um valor data/hora. | |
CURRENT_DATE |
Retorna a data corrente. Consulte CURRENT_DATE. | |
CURRENT_TIME |
Retorna a hora corrente. Consulte CURRENT_TIME. | |
CURRENT_TIMESTAMP |
Retorna o carimbo do tempo corrente. Consulte CURRENT_TIMESTAMP. |