Supprimer la ligne avec l'ID le plus petit

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Supprimer la ligne avec l'ID le plus petit

par zeus » 29 août 2007, 14:10

Modération :
Puisque ta question est résolue, j'ajoute le tag [Résolu]
pour indiquer aux personnes qui voudront consulter ce sujet qu'il contient une solution.

Tu peux réaliser cette opération toi-même
en cliquant sur le bouton Image qui s'affiche en haut à gauche de ce sujet
si tu as posté le 1er message en tant que membre (inscrit et identifié).

Alors... inscris-toi !!! ;)

par zeus » 29 août 2007, 14:10

Sinon, dans le cas de la sous-requête, l'erreur vient du fait que la sous-requête est considérée comme un ensemble de résultat, même si elle ne retourne qu'une seule ligne.

Il aurait donc fallu écrire

Code : Tout sélectionner

DELETE FROM table WHERE ID IN ( SELECT MIN( ID ) FROM table )

par Invité » 29 août 2007, 12:48

C'est bon j'ai trouvé comment faire :

Code : Tout sélectionner

DELETE FROM table ORDER BY ID ASC LIMIT 1
C'est tout simple, je sais :)
Merci à toi
@+[/code]

par Invité » 29 août 2007, 12:41

Oui elle fonctionne très bien
Je me suis trompé pour le message d'erreur, c'est:
#1093 - You can't specify target table 'archives_connexions' for update in FROM clause

par mere-teresa » 29 août 2007, 12:34

As-tu vérifié la validité de ta requête SELECT toute seule ?

Supprimer la ligne avec l'ID le plus petit

par toinou » 29 août 2007, 11:39

Bonjour à tous,
J'aimerais supprimer la ligne ayant l'ID le plus petit d'une table MySQL. À première vue ça parait facile, mais je bloque :o

Code : Tout sélectionner

DELETE FROM table WHERE ID = ( SELECT MIN( ID ) FROM table )
Ce code ne fonctionne pas, pourtant c'est celui qui me parait le plus logique...
L'erreur : #1111 - Invalid use of group function
Quelqu'un aurait-il la solution?
Merci d'avance.
Cordialement,
toinou