[ ] (caracteres comodín para búsqueda de coincidencias de Transact-SQL)
Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) Punto de conexión de análisis SQL en Microsoft Fabric Almacenamiento en Microsoft Fabric
Halla coincidencias con cada uno de los caracteres del intervalo o conjunto especificado entre corchetes [ ]
. Estos caracteres comodín se pueden usar en comparaciones de cadenas donde se buscan coincidencias de patrón, como sucede con LIKE
y PATINDEX
.
Ejemplos
A: Ejemplo sencillo
En el siguiente ejemplo se devuelven los nombres que comienzan por la letra m
. [n-z]
especifica que la segunda letra debe estar en alguna parte del intervalo entre n
y z
. El carácter comodín de porcentaje %
permite cualquier carácter que comience por el tercer carácter. Las bases de datos model
y msdb
cumplen este criterio, pero no la base de datos master
, de modo que se excluye del conjunto de resultados.
SELECT name FROM sys.databases
WHERE name LIKE 'm[n-z]%';
Este es el conjunto de resultados.
name
-----
model
msdb
Es posible que tenga instaladas más bases de datos aplicables.
B: Ejemplo más complejo
En el ejemplo siguiente se utiliza el operador [] para buscar los identificadores y nombres de todos los empleados de Adventure Works cuyas direcciones tienen un código postal de cuatro dígitos.
-- Uses AdventureWorks
SELECT e.BusinessEntityID, p.FirstName, p.LastName, a.PostalCode
FROM HumanResources.Employee AS e
INNER JOIN Person.Person AS p ON e.BusinessEntityID = p.BusinessEntityID
INNER JOIN Person.BusinessEntityAddress AS ea ON e.BusinessEntityID = ea.BusinessEntityID
INNER JOIN Person.Address AS a ON a.AddressID = ea.AddressID
WHERE a.PostalCode LIKE '[0-9][0-9][0-9][0-9]';
Este es el conjunto de resultados.
EmployeeID FirstName LastName PostalCode
---------- --------- --------- ----------
290 Lynn Tsoflias 3000
C: Uso de un conjunto en el que se combinan intervalos y caracteres únicos
Un conjunto de caracteres comodín puede incluír caracteres únicos e intervalos. El siguiente ejemplo usa el operador [] para buscar una cadena que empieza por un número o una serie de caracteres especiales.
SELECT [object_id], OBJECT_NAME(object_id) AS [object_name], name, column_id
FROM sys.columns
WHERE name LIKE '[0-9!@#$.,;_]%';
Este es el conjunto de resultados.
object_id object_name name column_id
--------- ----------- ---- ---------
615673241 vSalesPersonSalesByFiscalYears 2002 5
615673241 vSalesPersonSalesByFiscalYears 2003 6
615673241 vSalesPersonSalesByFiscalYears 2004 7
1591676718 JunkTable _xyz 1
Consulte también
LIKE (Transact-SQL)
PATINDEX (Transact-SQL)
% (caracteres comodín para coincidir) (Transact-SQL)
[^] (comodín - carácter o caracteres no coincidentes) (Transact-SQL)
_ (comodín, coincidir un carácter) (Transact-SQL)