SELECT, transfert (INSERT) et effacement (DELETE)

aannoonnyymmeee Messages postés 3 Date d'inscription jeudi 7 juin 2018 Statut Membre Dernière intervention 8 juin 2018 - 7 juin 2018 à 17:31
aannoonnyymmeee Messages postés 3 Date d'inscription jeudi 7 juin 2018 Statut Membre Dernière intervention 8 juin 2018 - 8 juin 2018 à 10:58
Bonjour tout le monde,

J'aimerais savoir comment on fait pour qu'avec une requête SQL, on puisse :

- sectionner tous les enregistrements sauf les 240 plus récentes valeurs d'une table 1 (DONNEES)



-puis, les transférer dans une autre table 2 (DONNEES_ARC) constituée exactement de la même manière

INSERT INTO DONNEES_ARC (`Key`, `Id_Capteur`, `Désignation`, `Valeur`, `Date`,`Heure`) SELECT `Key`, `Id_Capteur`, `Désignation`, `Valeur`, `Date`, `Heure`  FROM DONNEES


-et enfin, les effacer de la table 1 (DONNEES)

Respectueusement,

2 réponses

jordane45 Messages postés 38221 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 juillet 2024 344
7 juin 2018 à 17:44
Bonjour,

Pour prendre tous les résultats sauf les 240 plus récents... tu peux faire une requête SELECT triée en ordre décroissant et un OFFSET à 241

aannoonnyymmeee Messages postés 3 Date d'inscription jeudi 7 juin 2018 Statut Membre Dernière intervention 8 juin 2018
Modifié le 8 juin 2018 à 11:01
Bonjour,

Pour faire un offset sur MySQL, la syntaxe est la suivante
limit nboffset, nblignesqu'onveutprendreensuite
Pour une requête SELECT triée en ordre décroissant
nboffset OK c'est 241
mais comment prendres les lignes suivantes jusqu'à la fin ? COUNT(*) -241

PS : je t'invite à regarder ce forum où j'ai posé la même question mais on est en train de penser à une manière différente https://openclassrooms.com/forum/sujet/select-transfert-insert-et-effacement-delete?page=1#message-92425909

Respectueusement,
Rejoignez-nous