J'ai une table simple, quelque chose comme: int id, date created_at, date updated_at
. Je voudrais commander les lignes afin que toutes les lignes qui ont un updated_at
seront triées par cela, et ceux qui ne le seront pas seront triés par le created_at
. Le problème est que quelque chose comme:Commande par plusieurs champs dans SQLite
SELECT * FROM table ORDER BY updated_at, created_at
ne fonctionne pas. J'ai regardé des clauses de commande personnalisées, quelque chose comme:
ORDER BY CASE WHERE updated_at ISNULL <do something> END, created_at
mais ne semble pas fonctionner. Aide?
EDIT: J'ai précisé que je veux les updated_at
champs pour trier avant les created_at
champs. Donc, si les données ressemble à:
id created_at updated_at
-- ---------- ----------
1 2009-01-08 null
2 2009-09-08 null
3 2009-07-02 null
4 2009-09-05 2009-09-06
5 2009-04-01 null
6 2009-09-07 2009-09-08
Je veux des résultats tels que:
id created_at updated_at
-- ---------- ----------
6 2009-09-07 2009-09-08
4 2009-09-05 2009-09-06
2 2009-09-08 null
3 2009-07-02 null
5 2009-04-01 null
1 2009-01-08 null
Mise à jour ma réponse basée sur votre mise à jour. –