Page 1 sur 1

Trie par date

Posté : 07 sept. 2019, 14:38
par fabrice88250
Bonjour,
dans un base j'ai un champ qui s'appel date ( mai qui est format texte).
Ce champ comprend des dates sur le format 01-09-2019
J'aimerai sur ma requet sql faire un tri en fonction des dates ASC ou DESC du genre

Code : Tout sélectionner

SELECT * from matable ORDER BY date ASC
Le hic c'est que actuellement le tri en ASC ou DESC ne fonctionne pas.
Comment dois-je Ecrire ma requet pour avoir les dates dans l’ordre souhaité ?

Re: Trie par date

Posté : 07 sept. 2019, 15:05
par or 1
trier selon le résultat d'une fonction, https://dev.mysql.com/doc/refman/5.5/en ... tr-to-date
après, un champ date devrait être au format date et non texte.

Re: Trie par date

Posté : 09 sept. 2019, 13:12
par fabrice88250
Merci pour le lien qui est très intéressant :)
Par contre je ne trouve pas dans ce lien comment faire le trie en fonction de mon champs :cry:

Re: Trie par date

Posté : 09 sept. 2019, 15:19
par or 1
vous avez dit comment trier en sql :
SELECT * from matable ORDER BY date ASC

Re: Trie par date

Posté : 09 sept. 2019, 15:56
par fabrice88250
Oui mais mon champs est un champ texte et pas date donc cela ne fonctionne pas

Dans mon champ date les dates sont au format 04-09-2019 et là avec la requet ORDER BT DATE ASC j'ai les dates qui ressortent dans cet ordre :
04-09-2019
30-06-2019
30-08-2019
31-05-2019
31-07-2019
...

Re: Trie par date

Posté : 09 sept. 2019, 16:40
par @rthur
Il s'agit d'une erreur importante de conception de ta base de données : ton champ date ne doit surtout pas être au format texte mais au format date et donc sous la forme ANNEE-MOIS-JOUR
Fait le changement dès maintenant car sinon ça va te pourrir la vie et complexifier énormément tes développements