Requête update- numéroter du + ancien au + récent
jordane45 Messages postés 30426 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Je cherche à résoudre un problème de requête UPDATE pour numéroter des occurrences (id) du plus ancien au plus récent :
Je dispose d'une table A contenant ces colonnes : Id, date, numb_occ
id Date num_ occ
127 01/05/2014
321 24/02/2019
114 01/04/2021
127 01/02/2012
127 02/04/2013
144 01/04/2022
321 01/02/2020
444 01/04/2020
127 01/07/2022
Résultat:
id Date num_occ
127 01/05/2014 3
321 24/02/2019 1
114 01/04/2021 1
127 01/02/2012 1
127 02/04/2013 2
144 01/04/2022 1
321 01/02/2020 2
444 01/04/2020 1
127 01/07/2022 4
En vous remerciant par avance
Bonne journée
DE
Windows / Chrome 95.0.4638.54
3 réponses
-
Bonjour
Ce qui me dérange c'est le format de tes dates...
Une date, dans mysql, se Stock dans un champ de type date (et donc sous la forme année-mois-jour)
Commence par corriger ça.. le tri sera alors possible sans souci et sans avoir à renumeroter...
-
Bonjour Jordane,
il s’agit d’un exemple, ma colonne date est dans le bon format. Je cherche à avoir la méthode la plus simple pour actualiser la colonne num_occ p
merci par avance
DE
-
Si ton champ est dans le bon format, tu peux aller utiliser un ORDER BY sur la date et l'id
Puis utiliser une requête du genre pour mettre à jour
SET @r=0; UPDATE table SET Ranking= @r:= (@r+1) ORDER BY Score DESC;A mixer avec un truc du genre pour gérer chaque "groupe" d'id
http://www.silota.com/docs/recipes/sql-top-n-group.html
mais bon.. ça reste une drôle d'idée..