Anmerkung
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:SQL Server
Azure SQL-Datenbank
Verwaltete Azure SQL-Instanz
Azure Synapse Analytics
Analytics Platform System (PDW)
SQL-Analyseendpunkt in Microsoft Fabric
Lagerhaus in Microsoft Fabric
SQL-Datenbank in Microsoft Fabric
Entspricht jedem einzelnen Zeichen im Bereich oder der Menge, der bzw. die innerhalb der Klammern [ ] angegeben ist. Diese Platzhalterzeichen können in Zeichenfolgenvergleichen verwendet werden, bei denen Mustervergleiche wie LIKE und PATINDEX durchgeführt werden.
Examples
Die Codebeispiele in diesem Artikel verwenden die AdventureWorks2025- oder AdventureWorksDW2025 Beispieldatenbank, die Sie von der Microsoft SQL Server Samples and Community Projects Homepage herunterladen können.
A. Einfaches Beispiel
Im folgenden Beispiel werden Namen zurückgegeben, die mit dem Buchstaben m beginnen.
[n-z] legt fest, dass der zweite Buchstaben zwischen n und z liegen muss. Der Prozent-Platzhalter % erlaubt beliebige oder keine Zeichen, die mit dem dritten Zeichen beginnen. Die Datenbanken model und msdb erfüllen diese Kriterien. Die master-Datenbank erfüllt diese Kriterien nicht und wird aus dem Resultset ausgeschlossen.
SELECT name FROM sys.databases
WHERE name LIKE 'm[n-z]%';
Hier sehen Sie das Ergebnis.
name
-----
model
msdb
Möglicherweise sind mehr qualifizierende Datenbanken installiert.
B. Komplexeres Beispiel
Im folgenden Beispiel wird mithilfe des []-Operators nach den IDs und Namen aller Adventure Works-Mitarbeiter gesucht, deren Adressen eine vierstellige Postleitzahl enthalten.
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]';
Hier sehen Sie das Ergebnis.
EmployeeID FirstName LastName PostalCode
---------- --------- --------- ----------
290 Lynn Tsoflias 3000
C. Verwenden eines Satzes, der Bereiche und einzelne Zeichen kombiniert
In einer Reihe von Platzhaltern können sowohl Bereiche als auch einzelne Zeichen angegeben werden. Im folgenden Beispiel wird der []-Operator verwendet, um eine Zeichenfolge zu suchen, die mit einer Zahl oder einer Reihe von Sonderzeichen beginnt.
SELECT [object_id], OBJECT_NAME(object_id) AS [object_name], name, column_id
FROM sys.columns
WHERE name LIKE '[0-9!@#$.,;_]%';
Hier sehen Sie das Ergebnis.
object_id object_name name column_id
--------- ----------- ---- ---------
615673241 vSalesPersonSalesByFiscalYears 2002 5
615673241 vSalesPersonSalesByFiscalYears 2003 6
615673241 vSalesPersonSalesByFiscalYears 2004 7
1591676718 JunkTable _xyz 1