Devdit
 

Python ลบข้อมูล 2 ตารางพร้อมกัน ด้วยการ join ตาราง

291

Python ลบข้อมูล 2 ตารางพร้อมกัน ด้วยการ join ตาราง บทความนี้สอนการเขียนคำสั่ง SQL ในส่วนของ DELETE FROM เพื่อลบข้อมูลที่มีความสัมพันธ์กัน 2 ตาราง ผ่านการ join ตาราง สามารถเขียนโปรแกรมได้ดังนี้

 

ตัวอย่าง Python ลบข้อมูล 2 ตารางพร้อมกัน ด้วยการ join ตาราง

import mysql.connector
cnx = mysql.connector.connect(user='root', password='', host='127.0.0.1', database='demo')

cur = cnx.cursor()
sql = " DELETE category, book FROM category, book WHERE ( cgy_id = book_cgy_id ) AND ( cgy_id = 5 ) "
cur.execute( sql )
cnx.commit()

cnx.close()

คำอธิบาย

Python ลบข้อมูล 2 ตารางพร้อมกัน จากตัวอย่างต้องการลบข้อมูลจากตาราง category ด้วยรหัส cgy_id = 5 โดยให้ลบข้อมูลในตาราง book ที่อยู่ใน category ดังกล่าวด้วย พิจารณาคำสั่ง SQL ได้ดังนี้

1. DELETE category, book FROM category, book คือ ลบข้อมูล 2 ตารางจาก category และ book

2. WHERE ( cgy_id = book_cgy_id ) คือ join ตารางระหว่าง category ผ่าน column cgy_id และตาราง book ผ่าน column book_cgy_id

3. AND ( cgy_id = 5 ) คือ กำหนดเงื่อนไขข้อมูลที่จะลบ ตัวอย่างลบ cgy_id เท่ากับ 5 ซึ่งจะทำให้ข้อมูลในตาราง book ที่ book_cgy_id = 5 ทั้งหมดจะถูกลบไปด้วยผ่านการ join ตาราง

แก้ไข 9 เดือนที่แล้ว
ชอบ
ลิ้งก์
แชร์