2012-11-13 10 views
6

Mam problem. Kiedy mam ten kod SELECT FIRST_NAME FROM CONTACT WHERE FIRST_NAME LIKE '%ñ%', dlaczego jest on zwracany wszystkie FIRST_NAME, który ma n bez ñ. Oczekuję tylko tych, którzy mają ñ. Z góry dziękuję.mysql - Dlaczego "n" jest uwzględniane przy wyszukiwaniu "ñ"?

+2

myślę, że jest to problem sortowania. –

+0

@MahmoudGamal Im przy użyciu Latin1. Jakie jest najlepsze sortowanie, aby poradzić sobie z tym problemem? – TheOnlyIdiot

Odpowiedz

11
SELECT FIRST_NAME 
FROM CONTACT 
WHERE FIRST_NAME LIKE '%ñ%' COLLATE utf8_spanish_ci 
+2

+1, Pozwól, że dam ci jedno skrzypce demo: [SQL Fiddle Demo] (http://www.sqlfiddle.com/#!2/aa1a0/2). –

+0

Jesteś genialnym geniuszem !!! – TheOnlyIdiot

+0

dzięki @MahmoudGamal: D naprawdę to doceniam. –

7

spróbuje użyć operatora BINARY do porównywania ciągów znaków w sposób binarny -

SELECT FIRST_NAME FROM CONTACT WHERE FIRST_NAME LIKE BINARY '%ñ%' 
Powiązane problemy