2009-04-21 8 views
5

Es scheint, dass ß = ss in SQL. Ich muss in der Lage sein, auf einer strikt äquivalenten Basis zu unterscheiden.SQL-Abfrage, die zwischen ß und ss unterscheidet

dh select * from table where name like '% ß%' Erträge Brian Bruß Steven Sossmix

etc ..

ich an verschiedenen Sortierungen geschaut haben, um zu sehen, ob es eine ist, dass ignoriert Charaktererweiterungen, bisher aber kein Glück.

Datenbank hat Latin1_General_CI_AS als Standard - ich habe auch versucht Latin1_General_CS_AS und Latin1_General_CS_AS_WS, von denen keiner funktionierte.

Jede Hilfe wäre willkommen.

+0

Welche Datenbank-Server verwenden Sie? SQL Server, Oracle, MySQL oder ...? – Michael

+0

Und was sind die Lokalisierungseinstellungen - welcher Code-Satz und Kollation ist standardmäßig in Kraft. –

+0

Ich bekomme Ihre Ergebnisse, wenn ich ss mit N vorangestellt habe -> N'ss 'sonst funktioniert es wie erwartet (für mich). –

Antwort

9

Sie benötigen eine binäre Sortierung zu verwenden, so dass es case-sensitive ist, Akzent empfindliche usw.

Sortierungs: SQL_Latin1_General_Cp437_BIN

+0

Brilliant, danke. Genau danach war ich. –

1

Gefunden eine thread, die zwei Lösungen dafür hat.

+0

Eine Antwort war von Jon Skeet, also vielleicht könnte er eingreifen und es näher erläutern – TStamper