Groß- und Kleinschreibung von Zeichenfolgenvergleichen in SQL berücksichtigen
Standard-SQL-String-Vergleiche ignorieren häufig Unterschiede in der Groß-/Kleinschreibung. Eine Abfrage wie SELECT * FROM table WHERE column = 'value'
findet Übereinstimmungen unabhängig von der Groß- und Kleinschreibung.
Erzwingung der Groß-/Kleinschreibung
Um einen Vergleich unter Berücksichtigung der Groß- und Kleinschreibung durchzuführen, verwenden Sie die COLLATE
-Klausel. Diese Klausel gibt die Sortierung an – den Satz von Regeln, die das Sortieren und Vergleichen von Zeichenfolgen regeln. Durch die Auswahl einer Sortierung, bei der die Groß- und Kleinschreibung beachtet wird, wird eine genaue Zuordnung zwischen Groß- und Kleinschreibung gewährleistet.
Anschauliches Beispiel
Stellen Sie sich eine Tabelle mit einem String-Attribut vor:
<code>| attribute | |---|---| | abc | | ABC | | aBc |</code>
Eine typische Abfrage:
<code class="language-sql">SELECT * FROM table WHERE attribute = 'ABC';</code>
...würde alle drei Zeilen zurückgeben, da beim Abgleich die Groß-/Kleinschreibung nicht beachtet wird.
Um die Berücksichtigung der Groß- und Kleinschreibung zu erzwingen, verwenden Sie COLLATE
:
<code class="language-sql">SELECT * FROM table WHERE attribute = 'ABC' COLLATE Latin1_General_CS_AS;</code>
Latin1_General_CS_AS
ist eine Sortierung, bei der die Groß-/Kleinschreibung beachtet wird. Diese überarbeitete Abfrage gibt nur die Zeile zurück, in der attribute
genau „ABC“ ist.
Das obige ist der detaillierte Inhalt vonWie kann ich in SQL Zeichenfolgenvergleiche unter Berücksichtigung der Groß-/Kleinschreibung durchführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!