Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro:SQL Server
Azure SQL Database
Spravovaná instance Azure SQL
Azure Synapse Analytics
Analytics Platform System (PDW)
Koncový bod analýzy SQL v Microsoft Fabric
Sklad v Microsoft Fabric
Databáze SQL v Microsoft Fabric
Odpovídá libovolnému jednomu znaku v zadaném rozsahu nebo sadě zadané mezi hranatými závorkami [ ]. Tyto zástupné znaky lze použít v porovnání řetězců, které zahrnují porovnávání vzorů, například LIKE a PATINDEX.
Examples
Ukázky kódu v tomto článku používají ukázkovou databázi AdventureWorks2025 nebo AdventureWorksDW2025, kterou si můžete stáhnout z domovské stránky Microsoft SQL Serveru pro ukázky a komunitní projekty .
A. Základní příklad
Následující příklad vrátí názvy začínající písmenem m.
[n-z] určuje, že druhé písmeno musí být někde v rozsahu od n do z. Zástupný znak % procenta umožňuje libovolný nebo žádný znak začínající třetím znakem. Tato model kritéria splňují tato kritéria a msdb databáze. Databáze master nesplňuje kritéria a je vyloučena ze sady výsledků.
SELECT name FROM sys.databases
WHERE name LIKE 'm[n-z]%';
Tady je soubor výsledků.
name
-----
model
msdb
Je možné, že máte nainstalované opravňující databáze.
B. Složitější příklad
Následující příklad používá operátor [] k vyhledání ID a názvů všech zaměstnanců společnosti Adventure Works, kteří mají adresy se čtyřmístným PSČ.
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]';
Tady je soubor výsledků.
EmployeeID FirstName LastName PostalCode
---------- --------- --------- ----------
290 Lynn Tsoflias 3000
C. Použití sady, která kombinuje rozsahy a jednotlivé znaky
Sada zástupných znaků může obsahovat jednotlivé znaky i oblasti. Následující příklad používá operátor [] k vyhledání řetězce, který začíná číslem nebo řadou speciálních znaků.
SELECT [object_id], OBJECT_NAME(object_id) AS [object_name], name, column_id
FROM sys.columns
WHERE name LIKE '[0-9!@#$.,;_]%';
Tady je soubor výsledků.
object_id object_name name column_id
--------- ----------- ---- ---------
615673241 vSalesPersonSalesByFiscalYears 2002 5
615673241 vSalesPersonSalesByFiscalYears 2003 6
615673241 vSalesPersonSalesByFiscalYears 2004 7
1591676718 JunkTable _xyz 1