Compartir a través de


DÓNDE (Transact-SQL)

Se aplica a:SQL ServerAzure SQL DatabaseInstancia administrada de Azure SQLAzure Synapse AnalyticsAnalytics Platform System (PDW)Punto de conexión de SQL Analytics en Microsoft FabricAlmacén en Microsoft FabricBase de datos SQL en Microsoft Fabric

Especifica la condición de búsqueda de las filas devueltas por la consulta.

Convenciones de sintaxis de Transact-SQL

Syntax

[ WHERE <search_condition> ]

Arguments

< search_condition>

Define la condición que se va a cumplir para que se devuelvan las filas. No hay ningún límite para el número de predicados que se pueden incluir en una condición de búsqueda. Para obtener más información sobre las condiciones de búsqueda y los predicados, vea Condición de búsqueda.

Examples

Los ejemplos de código de este artículo usan la base de datos de ejemplo de AdventureWorks2025 o AdventureWorksDW2025, que puede descargar de la página principal de Ejemplos de Microsoft SQL Server y proyectos de comunidad.

En los ejemplos siguientes se muestra cómo utilizar algunas condiciones de búsqueda comunes en la cláusula WHERE.

A. Buscar una fila mediante una igualdad simple

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

B. Buscar filas que contienen un valor como parte de una cadena

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

C. Búsqueda de filas mediante un operador de comparación

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

D. Buscar filas que cumplan cualquiera de las tres condiciones

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

E. Buscar filas que deben cumplir varias condiciones

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

F. Buscar filas que se encuentran en una lista de valores

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

G. Buscar filas que tienen un valor entre dos valores

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