Capítulo 9. Funções e Operadores

Sumário
9.1. Operadores lógicos
9.2. Operadores de comparação
9.3. Funções e operadores matemáticos
9.4. Funções e operadores para cadeias de caracteres
9.4.1. Comparações entre o PostgreSQL, o Oracle, o SQL Server e o DB2
9.4.2. Similaridades entre o PostgreSQL e o Oracle
9.5. Funções e operadores para cadeias binárias
9.6. Funções e operadores para cadeias de bits
9.7. Correspondência com padrão
9.7.1. LIKE
9.7.2. Expressões regulares do SIMILAR TO
9.7.3. Expressões regulares POSIX
9.7.4. Exemplos
9.8. Funções para formatar tipo de dado
9.9. Funções e operadores para data e hora
9.9.1. Funções EXTRACT e date_part
9.9.2. date_trunc
9.9.3. AT TIME ZONE
9.9.4. Data e hora corrente
9.9.5. Comparação entre o PostgreSQL, o Oracle, o SQL Server e o DB2
9.10. Funções e operadores geométricos
9.11. Funções e operadores para endereço de rede
9.12. Funções para manipulação de seqüências
9.13. Expressões condicionais
9.13.1. CASE
9.13.2. COALESCE
9.13.3. NULLIF
9.14. Funções e operadores para matrizes
9.15. Funções de agregação
9.16. Expressões de subconsulta
9.16.1. EXISTS
9.16.2. IN
9.16.3. NOT IN
9.16.4. ANY/SOME
9.16.5. ALL
9.16.6. Comparação de toda a linha
9.17. Comparações de linha e de matriz
9.17.1. IN
9.17.2. NOT IN
9.17.3. ANY/SOME (matriz)
9.17.4. ALL (matriz)
9.17.5. Comparação por toda a largura da linha
9.18. Funções que retornam conjunto
9.19. Funções de informação do sistema
9.20. Funções para administração do sistema

O PostgreSQL fornece um grande número de funções e operadores para os tipos de dado nativos. Os usuários também podem definir suas próprias funções e operadores, conforme descrito na Parte V. Os comandos \df e \do do psql podem ser utilizados para mostrar a lista de todas as funções e operadores disponíveis, respectivamente.

Havendo preocupação quanto à portabilidade, deve-se ter em mente que a maioria das funções e operadores descritos neste capítulo, com exceção dos operadores mais triviais de aritmética e de comparação, além de algumas funções indicadas explicitamente, não são especificadas pelo padrão SQL. Algumas das funcionalidades estendidas estão presentes em outros sistemas gerenciadores de banco de dados SQL e, em muitos casos, estas funcionalidades são compatíveis e consistentes entre as várias implementações.

9.1. Operadores lógicos

Estão disponíveis os operadores lógicos habituais:

AND
OR
NOT
O SQL utiliza a lógica booleana de três valores, onde o valor nulo representa o "desconhecido". Devem ser observadas as seguintes tabelas verdade:
a b a AND b a OR b
TRUE TRUE TRUE TRUE
TRUE FALSE FALSE TRUE
TRUE NULL NULL TRUE
FALSE FALSE FALSE FALSE
FALSE NULL FALSE NULL
NULL NULL NULL NULL
a NOT a
TRUE FALSE
FALSE TRUE
NULL NULL

Os operadores AND e OR são comutativos, ou seja, pode-se trocar a ordem dos operandos esquerdo e direito sem afetar o resultado. Consulte a Seção 4.2.12 para obter informações adicionais sobre a ordem de avaliação das subexpressões.

SourceForge.net Logo CSS válido!