… (O с двойными точками) в записи Mysql? - PullRequest
0 голосов
/ 15 ноября 2009

У меня есть строка в таблице MySQL с "ö". Все слово "Форетаг".

Как мне выбрать это слово в SQL-запросе?

Я пробовал с f & ouml; retag, но это не сработало. Таблица использует utf8.

Ответы [ 4 ]

2 голосов
/ 15 ноября 2009

Вы также можете попробовать выполнить следующий запрос перед запуском выбора:

SET CHARACTER SET utf8;

Только что протестировал его на моем локальном MySQL (таблица была создана с использованием кодировки UTF8):

mysql> select * from xxx where s='företag';
+----------+
| s        |
+----------+
| företag |
+----------+
1 row in set (0.00 sec)
2 голосов
/ 15 ноября 2009

Вы можете использовать:

SELECT * FROM table WHERE field LIKE 'f_retag';

('_' - это подстановочный знак из одного символа для операторов LIKE)

Если вы используете терминал, убедитесь, что терминал использует UTF-8. Попробуйте:

 echo $LANG

Также попробуйте форсировать набор символов при запуске команды mysql:

 mysql --default-character-set=utf-8

В противном случае, предоставьте более подробную информацию о том, какой язык и среду вы используете для доступа к БД.

1 голос
/ 15 ноября 2009

Попробуйте это

declare @tbl table(name varchar(50))
insert into @tbl select 'företag' union all select 'foretag'

SELECT * FROM @tbl WHERE name = 'företag';

SELECT * FROM @tbl WHERE name like '%ö%';
0 голосов
/ 15 ноября 2009

Существует несколько способов написания акцентированного символа в Юникоде. Например, «Ä» также может быть написано как «A \ u0308». Соответствующим документом Unicode является «Формы нормализации Unicode» , но его нелегко читать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...