Heim >Datenbank >MySQL-Tutorial >Wie führt man in SQL Server-WHERE-Klauseln eine Groß-/Kleinschreibung berücksichtigende Suche durch?

Wie führt man in SQL Server-WHERE-Klauseln eine Groß-/Kleinschreibung berücksichtigende Suche durch?

Susan Sarandon
Susan SarandonOriginal
2025-01-14 09:05:42987Durchsuche

How to Perform Case-Sensitive Searches in SQL Server WHERE Clauses?

Groß-/Kleinschreibung berücksichtigende Suchvorgänge in SQL Server-WHERE-Klauseln erreichen

Beim Standardverhalten von SQL Server für Zeichenfolgenvergleiche innerhalb von WHERE-Klauseln wird die Groß-/Kleinschreibung nicht beachtet. Dies stellt eine Herausforderung dar, wenn eine präzise Suche unter Berücksichtigung der Groß-/Kleinschreibung erforderlich ist.

Nutzung der Sortierung für Vergleiche unter Beachtung der Groß-/Kleinschreibung

Die Lösung liegt in der Verwendung des Schlüsselworts COLLATE. Mit diesem Schlüsselwort können Sie die Sortierung für die am Vergleich beteiligte Spalte angeben und so die Regeln für den String-Abgleich definieren, einschließlich der Berücksichtigung der Groß- und Kleinschreibung.

Zum Beispiel:

<code class="language-sql">SELECT 1
FROM dbo.Customers
WHERE CustID COLLATE SQL_Latin1_General_CP1_CS_AS = @CustID
AND OrderID COLLATE SQL_Latin1_General_CP1_CS_AS = @OrderID</code>

Hier erzwingt COLLATE SQL_Latin1_General_CP1_CS_AS den Vergleich zwischen Groß- und Kleinschreibung sowohl für die Spalten CustID als auch OrderID.

Spalteneigenschaften für dauerhafte Berücksichtigung der Groß-/Kleinschreibung ändern

Für ein konsistentes Verhalten unter Berücksichtigung der Groß- und Kleinschreibung können Sie die Spalteneigenschaften direkt in der Tabellendefinition anpassen. Standardmäßig werden Spalten mit Eigenschaften erstellt, bei denen die Groß-/Kleinschreibung nicht beachtet wird.

COLLATE mit dem LIKE-Operator integrieren

Das Schlüsselwort COLLATE lässt sich nahtlos in den Operator LIKE für den Mustervergleich unter Berücksichtigung der Groß-/Kleinschreibung integrieren:

<code class="language-sql">SELECT *
FROM tbl_Partners
WHERE PartnerName COLLATE SQL_Latin1_General_CP1_CS_AS LIKE 'MyEx%' COLLATE SQL_Latin1_General_CP1_CS_AS</code>

Diese Abfrage führt eine Suche unter Berücksichtigung der Groß- und Kleinschreibung nach PartnerName Werten durch, die mit „MyEx“ beginnen.

Das obige ist der detaillierte Inhalt vonWie führt man in SQL Server-WHERE-Klauseln eine Groß-/Kleinschreibung berücksichtigende Suche durch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn