Todas las operaciones con comparaciones de caracteres, tienen que ver con el collations que estes usando, si quieres que diferencien n de ñ , debes hacer uso de cualquiera de estos collations: utf8_spanish_ci y utf8_spanish2_ci, aqui te dejo un trozo del manual de mysql que habla del asunto:
Código:
Las colaciones utf8_spanish_ci y utf8_spanish2_ci se corresponden con español moderno y español tradicional respectivamente. En ambas colaciones , 'ñ' es una letra independiente, entre 'n' y 'o'. Además, para español tradicional 'ch' es una letra, ordenada entre 'c' y d, y 'll' es una letra que se coloca entre 'l' y 'm'
al momento de ejecutar tus consultas puedes hacer uso directo de estas colaciones:
Código PHP:
mysql> SELECT 'ä' LIKE 'ae' COLLATE latin1_german2_ci;
+-----------------------------------------+
| 'ä' LIKE 'ae' COLLATE latin1_german2_ci |
+-----------------------------------------+
| 0 |
+-----------------------------------------+
mysql> SELECT 'ä' = 'ae' COLLATE latin1_german2_ci;
+--------------------------------------+
| 'ä' = 'ae' COLLATE latin1_german2_ci |
+--------------------------------------+
| 1 |
+--------------------------------------+
otro aspecto a tomar en cuenta es que tienes que tener tambien un juego de caracteres compatible con la colacion, saludos, cya