"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment supprimer une plage de lignes à l'aide de LIMIT dans l'instruction MySQL DELETE ?

Comment supprimer une plage de lignes à l'aide de LIMIT dans l'instruction MySQL DELETE ?

Publié le 2024-11-09
Parcourir:301

How to Delete a Range of Rows Using LIMIT in MySQL DELETE Statement?

Correction de la syntaxe de l'instruction MySQL DELETE avec LIMIT

Lorsque vous tentez de supprimer une plage de lignes d'une table MySQL à l'aide d'une instruction DELETE avec une clause LIMIT, vous pouvez rencontrer une erreur si la syntaxe est incorrecte. Cette erreur indique généralement qu'il y a un problème avec la syntaxe utilisée pour spécifier la limite.

Le problème dans la requête fournie est que vous ne pouvez pas spécifier de décalage dans la clause LIMIT d'une instruction DELETE. La syntaxe d'utilisation de la clause LIMIT dans une instruction DELETE est LIMIT , sans spécifier de décalage ni de point de départ.

Pour résoudre ce problème, vous devez réécrire votre requête pour spécifier les lignes à supprimer. plus précisément. Une façon de procéder consiste à utiliser la clause IN pour sélectionner les ID des lignes que vous souhaitez supprimer, puis à utiliser ces ID pour filtrer les lignes dans l'instruction DELETE.

Voici un exemple de la façon dont vous pouvez réécrire votre requête :

DELETE FROM `chat_messages` 
WHERE `id` IN (
    SELECT `id` FROM (
        SELECT `id` FROM `chat_messages`
        ORDER BY `timestamp` DESC
        LIMIT 20, 50
    ) AS `x`
)

Dans cette requête, nous utilisons d'abord une sous-requête pour sélectionner les ID des lignes que nous souhaitons supprimer. Ensuite, nous utilisons la clause IN dans l'instruction DELETE principale pour filtrer les lignes en fonction de ces ID, ce qui entraîne la suppression de la plage de lignes souhaitée.

Il est important de noter que vous devrez peut-être apporter des ajustements à la requête en fonction de la structure spécifique de votre table et du comportement souhaité.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3