Проблем със сортирането в MySQL
2 отговора
0 прегледа
Проблем със сортирането в MySQL
Здравейте,
след като вече 2 часа се мъча и все още не мога да намеря решение, реших да питам тук. Ето какъв е проблема. В една таблица имам колона "name" и 7 реда:
А
Ь
С
З
Г
Я
И
при сортиране с ORDER BY name получавам това:
А
С
Ь
Я
И
З
Г
таблицата и самото ми поле са UTF8 и utf8_general_ci
След като четах и пробвах какво ли не (set names, binary, други схемни някакви), така и не успях да го накарам да сортира правилно.
Версия на сървъра: 5.0.67-community-nt
Набор от знаци на MySQL: UTF-8 Unicode (utf8)
Web server
Apache/2.2.10 (Win32) PHP/5.2.6
Версия на клиента за MySQL: 5.0.51a
There is OnLy One!
след като вече 2 часа се мъча и все още не мога да намеря решение, реших да питам тук. Ето какъв е проблема. В една таблица имам колона "name" и 7 реда:
А
Ь
С
З
Г
Я
И
при сортиране с ORDER BY name получавам това:
А
С
Ь
Я
И
З
Г
таблицата и самото ми поле са UTF8 и utf8_general_ci
След като четах и пробвах какво ли не (set names, binary, други схемни някакви), така и не успях да го накарам да сортира правилно.
Версия на сървъра: 5.0.67-community-nt
Набор от знаци на MySQL: UTF-8 Unicode (utf8)
Web server
Apache/2.2.10 (Win32) PHP/5.2.6
Версия на клиента за MySQL: 5.0.51a
There is OnLy One!
Re: Проблем със сортирането в MySQL
Проблемът явно е в твоя телевизор:
mysql> SELECT * FROM t;
+------+
| name |
+------+
| А |
| Ь |
| С |
| З |
| Г |
| Я |
| И |
+------+
7 rows in set (0.00 sec)
mysql> SELECT * FROM t ORDER BY name;
+------+
| name |
+------+
| А |
| Г |
| З |
| И |
| С |
| Ь |
| Я |
+------+
7 rows in set (0.00 sec)
SHOW CREATE TABLE t;
CREATE TABLE `t` (
`name` char(4) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
salle.online.bg/sig
mysql> SELECT * FROM t;
+------+
| name |
+------+
| А |
| Ь |
| С |
| З |
| Г |
| Я |
| И |
+------+
7 rows in set (0.00 sec)
mysql> SELECT * FROM t ORDER BY name;
+------+
| name |
+------+
| А |
| Г |
| З |
| И |
| С |
| Ь |
| Я |
+------+
7 rows in set (0.00 sec)
SHOW CREATE TABLE t;
CREATE TABLE `t` (
`name` char(4) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
salle.online.bg/sig
Re: Проблем със сортирането в MySQL
Проблемът е при самият импорт. Когато импортвам директно от csv-то, нещо не ми се получава. Но когато копирам и изъпня заявките с 'SET NAMES UTF8' и 'SET CHARACTER SET UTF8'; проблем няма. Интересна работа.
There is OnLy One!
There is OnLy One!