SQL の DELETE JOIN を使用すると、別のテーブルに関係する条件に基づいてテーブルの行を削除できます。使用できます 消去 とのステートメント 参加する DELETE JOIN を実行する操作。
複数のテーブルのデータを結合するには JOIN を使用します。その時点でテーブルから同じ行または関連する行を削除するには、結合の削除を使用します。
この記事では、MSSQL をサーバーとして使用し、JOIN を使用した DELETE を使用して複数のデータを削除する方法を見てみましょう。
構文
消去 表1
から 表1 参加する 表2
の上 テーブル1.属性名 = テーブル2.属性名
文字列.値どこ 状態
デモ SQL データベース
この DELETE JOIN チュートリアルでは、例として次の 2 つのテーブルを使用します。
表 1 - 学生
Javaは整数を文字列に変換します
学生証 | 学生の名前 | 学生支部 |
---|---|---|
1001 | プラディープ | EC |
1002 | 電話 | EC |
1003 | プラナフ | EC |
2001年 | パドマ | C.S.E |
2002年 | スルティ | C.S.E |
2003年 | ハルシタ | C.S.E |
3001 | それまで | それ |
3002 | ひどい | それ |
3003 | ハルシニ | それ |
表 2 - 図書館の本
lib_id | 本を撮った |
---|---|
1001 | 2 |
1002 | 3 |
1003 | 4 |
2001年 | 2 |
3001 | 3 |
システム上にこれらのテーブルを作成するには、次のクエリを作成します。
MSSQL CREATE DATABASE techcodeview.com; USE techcodeview.com CREATE TABLE student ( student_id VARCHAR(8), student_name VARCHAR(20), student_branch VARCHAR(20) ) CREATE TABLE library_books( lib_id VARCHAR(20), book_taken INT ) INSERT INTO students VALUES( '1001','PRADEEP','E.C.E'), ( '1002','KIRAN','E.C.E'), ( '1003','PRANAV','E.C.E'), ( '2001','PADMA','C.S.E'), ( '2002','SRUTHI','C.S.E'), ( '2003','HARSITHA','C.S.E'), ( '3001','SAI','I.T'), ( '3002','HARSH','I.T'), ( '3003','HARSHINI','I.T') INSERT INTO library_books VALUES( '1001',2), ( '1002',3), ( '1003',4), ( '2001',2), ( '3001',3)>
SQL DELETE JOIN の例
ID 1001 のライブラリ エントリを削除するクエリを使用します。 参加する
クエリ:
DELETE library_books FROM library_books JOIN students ON students.student_id =library_books.lib_id WHERE lib_id= 1001 SELECT * FROM library_books>
出力:

DELETE JOIN に関する重要なポイント
- DELETE JOIN を使用すると、別のテーブルに関係する条件に基づいてテーブルから行を削除できます。
- 使用できます 消去 JOIN を使用して、2 つ以上のテーブルから複数の行を削除します。
- 使用する どこ JOIN 句を使用すると、行を削除するための条件を指定できます。
- テーブルからレコードを削除すると、他のテーブルの関連レコードも削除されます