Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Base de dados SQL no Microsoft Fabric
Os operadores de comparação testam se duas expressões são iguais. Os operadores de comparação podem ser usados em todas as expressões, exceto expressões dos tipos de dados text, ntext ou image . A tabela a seguir lista os operadores de comparação Transact-SQL.
| Operator | Meaning |
|---|---|
| = (Igual) | Igual a |
| > (Maior que) | Maior que |
| < (Menos que) | Menos de |
| >= (maior ou igual a) | Maior ou igual a |
| <= (inferior ou igual a) | Menor que ou igual a |
| <> (Não igual a) | Não é igual a |
| != (não igual a) | Não igual a (não padrão ISO) |
| !< (não inferior a) | Não inferior a (não norma ISO) |
| !> (Não superior a) | Não superior a (não norma ISO) |
Tipo de dados booleanos
O resultado de um operador de comparação tem o tipo de dados booleano . Isso tem três valores: TRUE, FALSE e UNKNOWN. As expressões que retornam um tipo de dados booleano são conhecidas como expressões booleanas.
Ao contrário de outros tipos de dados do SQL Server, um tipo de dados booleano não pode ser especificado como o tipo de dados de uma coluna ou variável de tabela e não pode ser retornado em um conjunto de resultados.
Quando SET ANSI_NULLS está ON, um operador que tem uma ou duas expressões NULL retorna UNKNOWN. Quando SET ANSI_NULLS está OFF, as mesmas regras se aplicam, exceto para os operadores igual (=) e não igual (<>). Quando SET ANSI_NULLS está OFF, esses operadores tratam NULL como um valor conhecido, equivalente a qualquer outro NULL, e retornam apenas TRUE ou FALSE (nunca UNKNOWN).
Expressões com tipos de dados booleanos são usadas na cláusula WHERE para filtrar as linhas que se qualificam para as condições de pesquisa e em instruções de linguagem de controle de fluxo, como IF e WHILE, por exemplo:
-- Uses AdventureWorks
DECLARE @MyProduct INT;
SET @MyProduct = 750;
IF (@MyProduct <> 0)
SELECT ProductID, Name, ProductNumber
FROM Production.Product
WHERE ProductID = @MyProduct;