Как использовать инструкцию SQL Order By для сортировки результатов без учета регистра?
У меня есть база данных SQLite, что я пытаюсь отсортировать по алфавиту. Проблема в том, что SQLite, похоже, не рассматривает a=a во время сортировки, поэтому я получаю такие результаты:
A Си С T ля си с g
Я хочу сделать:
A ля си Си С с г T
какую специальную вещь SQL нужно сделать, о которой я не знаю?
SELECT * FROM NOTES ORDER BY title
3 ответов
вы также можете сделать ORDER BY TITLE COLLATE NOCASE
.
Edit: Если вам нужно указать ASC
или DESC
добавить этого после NOCASE
как
ORDER BY TITLE COLLATE NOCASE ASC
или
ORDER BY TITLE COLLATE NOCASE DESC
Вы можете просто конвертировать все в нижний регистр для целей сортировки:
SELECT * FROM NOTES ORDER BY LOWER(title);
Если вы хотите убедиться, что заглавные по-прежнему опережают строчные, просто добавьте это как вторичную сортировку:
SELECT * FROM NOTES ORDER BY LOWER(title), title;