Compartilhar via


ONDE (Transact-SQL)

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada de SQL do AzureAzure Synapse AnalyticsAnalytics Platform System (PDW)Ponto de extremidade de análise de SQL no Microsoft FabricDepósito no Microsoft FabricBanco de dados SQL no Microsoft Fabric

Especifica o critério de pesquisa para as linhas retornadas pela consulta.

Convenções de sintaxe de Transact-SQL

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 de pesquisa e predicados, consulte a condição de pesquisa.

Examples

Os exemplos de código neste artigo usam o banco de dados de exemplo AdventureWorks2025 ou AdventureWorksDW2025, que você pode baixar na página inicial Microsoft SQL Server Samples and Community Projects.

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

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. Localizar 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. Localizar 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;