INNER JOIN を使用してレコードを削除するための SQL 構文の修正
この記事では、SQL Server で INNER JOIN
を使用してテーブルからレコードを削除する際の一般的な構文エラーについて説明します。 目的は、WorkRecord2
テーブルとの関係に基づいて Employee
テーブルからエントリを削除することです。元のクエリには構文エラーが含まれていました。 修正されたクエリを以下に示します:
DELETE w FROM WorkRecord2 w INNER JOIN Employee e ON w.EmployeeRun = e.EmployeeNo WHERE e.Company = '1' AND e.Date = '2013-05-06';
重要な修正は、WorkRecord2
にエイリアス「w」、Employee
に「e」を導入したことです。 DELETE w
句は、削除が WorkRecord2
テーブル (「w」というエイリアス) に適用されることを明確に指定します。 FROM
句は、これらのエイリアスを使用して結合内のテーブルを区別します。 ON
句は、エイリアス (w.EmployeeRun = e.EmployeeNo
) を使用して結合条件を正しく指定します。 最後に、WHERE
句は削除をフィルター処理して、Company
テーブル内で Date
が '1' であり、Employee
が '2013-05-06' であるレコードのみを含めます (エイリアス "e" を使用)。これにより、関連するレコードのみが WorkRecord2
から削除されます。 修正されたクエリは正常に実行されるようになります。
以上がSQL Server で INNER JOIN を使用してレコードを正しく削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。