J'ai une base de données SQLite que j'essaye de trier par ordre alphabétique. Le problème est que SQLite ne semble pas prendre en compte A = a pendant le tri. J'obtiens donc les résultats suivants:
A B C T a b c g
Je veux obtenir:
A b b c c g t
Qu'est-ce qu'il y a de particulier à faire avec le langage SQL?
SELECT * FROM NOTES ORDER BY title
Vous pouvez aussi faire ORDER BY TITLE COLLATE NOCASE
.
Edit: Si vous devez spécifier ASC
ou DESC
, ajoutez ceci après NOCASE
comme
ORDER BY TITLE COLLATE NOCASE ASC
ou
ORDER BY TITLE COLLATE NOCASE DESC
Vous pouvez simplement tout convertir en minuscule aux fins de tri:
SELECT * FROM NOTES ORDER BY LOWER(title);
Si vous voulez vous assurer que les majuscules finissent toujours devant les minuscules, ajoutez simplement cela comme un tri secondaire:
SELECT * FROM NOTES ORDER BY LOWER(title), title;
SELECT * FROM NOTES ORDER BY UPPER(title)