как mysql упорядочивает строки?

#mysql #encoding

#mysql #кодирование

Вопрос:

 SELECT IF('y' = 'i', 1, 2 ) -> 1 why?
  

Могу ли я изменить кодировку или что-то еще, чтобы все было правильно? и как упорядочивать строки типа irish и yes

теперь поле и таблица, закодированные в utf8_lithuanian_ci

итак, как упорядочить список с этими символами?

Ответ №1:

Вы можете сравнить / упорядочить эти строки, используя ДВОИЧНЫЙ оператор —

 SELECT * FROM table ORDER BY BINARY column;
  

Из ссылки — ДВОИЧНЫЙ оператор преобразует следующую за ним строку в двоичную строку. Это простой способ принудительно выполнять сравнение столбцов побайтно, а не посимвольно.

Ответ №2:

Сортировка по алфавиту выполняется в отношении сортировки, поэтому вам нужно найти, что лучше для вас. http://dev.mysql.com/doc/refman/5.0/en/charset-general.html

Ответ №3:

Упорядочивание работает так же для строк, как и для целых чисел. Он выполняет сортировку по алфавиту.

 SELECT * FROM table ORDER BY column ASC