ONDE (Transact-SQL)

Aplica-se a:SQL ServerBase de Dados SQL do AzureAzure SQL Managed InstanceAzure Synapse AnalyticsEndpoint de análise SQL no Microsoft FabricArmazém no Microsoft FabricBase de dados SQL no Microsoft Fabric

Especifica a condição de pesquisa para as linhas retornadas pela consulta.

Transact-SQL convenções de sintaxe

Syntax

[ WHERE <search_condition> ]

Arguments

< search_condition>

Define a condição a ser atendida para que as linhas sejam retornadas. Não há limite para o número de predicados que podem ser incluídos em uma condição de pesquisa. Para obter mais informações sobre condições e predicados de pesquisa, consulte Condição de pesquisa.

Examples

Os exemplos de código neste artigo usam o banco de dados de exemplo AdventureWorks2025 ou AdventureWorksDW2025, que pode ser descarregado da página inicial de Exemplos e Projetos da Comunidade do Microsoft SQL Server.

Os exemplos a seguir mostram como usar algumas condições de pesquisa comuns na WHERE cláusula.

A. Localizar uma linha usando uma igualdade simples

-- Uses AdventureWorksDW
SELECT EmployeeKey, LastName
FROM DimEmployee
WHERE LastName = 'Smith';

B. Localizar linhas que contêm um valor como parte de uma cadeia de caracteres

-- Uses AdventureWorksDW
SELECT EmployeeKey, LastName
FROM DimEmployee
WHERE LastName LIKE '%Smi%';

C. Localizar linhas usando um operador de comparação

-- Uses AdventureWorksDW
SELECT EmployeeKey, LastName
FROM DimEmployee
WHERE EmployeeKey <= 500;

D. Encontre linhas que atendam a qualquer uma das três condições

-- Uses AdventureWorksDW
SELECT EmployeeKey, LastName
FROM DimEmployee
WHERE EmployeeKey = 1
      OR EmployeeKey = 8
      OR EmployeeKey = 12;

E. Encontre linhas que devem atender a várias condições

-- Uses AdventureWorksDW
SELECT EmployeeKey, LastName
FROM DimEmployee
WHERE EmployeeKey <= 500
      AND LastName LIKE '%Smi%'
      AND FirstName LIKE '%A%';

F. Localizar linhas que estão em uma lista de valores

-- Uses AdventureWorksDW
SELECT EmployeeKey, LastName
FROM DimEmployee
WHERE LastName IN ('Smith', 'Godfrey', 'Johnson');

G. Localizar linhas que têm um valor entre dois valores

-- Uses AdventureWorksDW
SELECT EmployeeKey, LastName
FROM DimEmployee
WHERE EmployeeKey BETWEEN 100 AND 200;