Maison >base de données >tutoriel mysql >Comment supprimer correctement des lignes à l'aide d'INNER JOIN dans SQL Server ?

Comment supprimer correctement des lignes à l'aide d'INNER JOIN dans SQL Server ?

Barbara Streisand
Barbara Streisandoriginal
2025-01-19 06:15:10604parcourir

How to Correctly Delete Rows Using INNER JOIN in SQL Server?

La bonne façon d'utiliser INNER JOIN pour supprimer des lignes dans SQL Server

Lors de la suppression de lignes à l'aide de INNER JOIN dans SQL Server, veillez à éviter les erreurs courantes pouvant entraîner l'échec de l'opération. Une de ces erreurs consiste à omettre la spécification explicite de la table à supprimer.

Erreur rencontrée :

Lors de l'exécution du code suivant, vous rencontrez le message d'erreur :

<code class="language-sql">DELETE 
FROM WorkRecord2 
INNER JOIN Employee 
        ON EmployeeRun=EmployeeNo
WHERE Company = '1' 
    AND Date = '2013-05-06'</code>

Le message d'erreur est le suivant :

Msg 156, niveau 15, état 1, ligne 15
Erreur de syntaxe à proximité du mot clé « INNER ».

Solution :

Pour corriger cette erreur, vous devez identifier explicitement la table qui sera modifiée par l'opération DELETE. Ceci peut être réalisé en introduisant des alias dans la table. Le code modifié est le suivant :

<code class="language-sql">DELETE w
FROM WorkRecord2 w
INNER JOIN Employee e
  ON EmployeeRun=EmployeeNo
WHERE Company = '1' AND Date = '2013-05-06'</code>

Dans ce code mis à jour, "w" est utilisé comme alias pour la table WorkRecord2. Cela garantit que l'instruction DELETE cible la bonne table pour supprimer des lignes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn