Maison >base de données >tutoriel mysql >Comment supprimer correctement des enregistrements à l'aide d'un INNER JOIN dans SQL Server ?
Correction de la syntaxe SQL pour la suppression d'enregistrements avec INNER JOIN
Cet article traite d'une erreur de syntaxe courante lors de la suppression d'enregistrements d'une table à l'aide d'un INNER JOIN
dans SQL Server. L'objectif est de supprimer des entrées de la table WorkRecord2
en fonction d'une relation avec la table Employee
. La requête d'origine contenait une erreur de syntaxe. La requête corrigée est présentée ci-dessous :
<code class="language-sql">DELETE w FROM WorkRecord2 w INNER JOIN Employee e ON w.EmployeeRun = e.EmployeeNo WHERE e.Company = '1' AND e.Date = '2013-05-06';</code>
La correction clé est l'introduction des alias "w" pour WorkRecord2
et "e" pour Employee
. La clause DELETE w
précise clairement que la suppression s'applique à la table WorkRecord2
(alias "w"). La clause FROM
utilise ensuite ces alias pour faire la distinction entre les tables de la jointure. La clause ON
spécifie correctement la condition de jointure à l'aide des alias (w.EmployeeRun = e.EmployeeNo
). Enfin, la clause WHERE
filtre la suppression pour inclure uniquement les enregistrements où le Company
est « 1 » et le Date
est le « 2013-05-06 » dans la table Employee
(en utilisant l'alias « e »). Cela garantit que seuls les enregistrements pertinents sont supprimés de WorkRecord2
. La requête corrigée va désormais s'exécuter avec succès.
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!