Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> SQL

SQL ลบแถว:A Guide

คำสั่ง SQL DELETE จะลบแถวออกจากตารางฐานข้อมูล คุณสามารถใช้คำสั่ง WHERE เพื่อระบุว่าเร็กคอร์ดใดควรถูกลบ หากคุณไม่ระบุคำสั่ง where ทุกแถวในตารางจะถูกลบออก

การลบแถวเป็นการดำเนินการทั่วไปใน SQL . ตัวอย่างเช่น ผู้ใช้อาจตัดสินใจลบบัญชีของตนบนเว็บไซต์ของคุณ คุณจะต้องลบข้อมูลของพวกเขาออกจากฐานข้อมูลผู้ใช้ของคุณ

คุณสามารถใช้ SQL DELETE คำสั่งเพื่อลบแถวใด ๆ ออกจากตารางของคุณ ในบทช่วยสอนนี้ เราจะพูดถึงวิธีดำเนินการ แถวการลบ SQL คำสั่งบนฐานข้อมูลของคุณ

ทบทวนบันทึก SQL

ฐานข้อมูลประกอบด้วยชุดของตาราง ซึ่งแต่ละตารางจัดเก็บระเบียนของตนเอง

ตัวอย่างเช่น ฐานข้อมูลของบริษัทเราอาจรวมตารางเกี่ยวกับพนักงาน ซัพพลายเออร์ แผนก เงินเดือน และอื่นๆ แต่ละตารางเหล่านั้นจะรวมระเบียนของตนเอง ซึ่งเป็นรายการแต่ละรายการในตาราง ตารางเงินเดือนอาจรวมรายการการชำระเงินให้กับพนักงาน

ในการเพิ่มระเบียนใหม่ลงในตาราง เราใช้ SQL INSERT คำแถลง. ซึ่งช่วยให้เราเพิ่มบันทึกที่มีค่าเฉพาะลงในคอลัมน์ที่เราเลือกได้

นี่คือตัวอย่างของ SQL INSERT คำสั่งในการดำเนินการ:

INSERT INTO company_departments (name, department_id) VALUES ('Payroll', 5);

แต่ถ้าเราต้องการลบแถวออกจากตารางของเราล่ะ เราสามารถใช้คำสั่งแถว DELETE เพื่อบรรลุเป้าหมายนี้

81% ของผู้เข้าร่วมกล่าวว่าพวกเขารู้สึกมั่นใจมากขึ้นเกี่ยวกับโอกาสในการทำงานด้านเทคโนโลยีหลังจากเข้าร่วม bootcamp จับคู่กับ Bootcamp วันนี้

ผู้สำเร็จการศึกษาจากหลักสูตร bootcamp โดยเฉลี่ยใช้เวลาน้อยกว่าหกเดือนในการเปลี่ยนอาชีพ ตั้งแต่เริ่มต้น bootcamp ไปจนถึงหางานแรก

SQL ลบแถวออกจากตาราง

SQL DELETE คำสั่งลบแถวหรือหลายแถวออกจากตาราง คำสั่งใช้สองพารามิเตอร์ อันดับแรก คุณควรระบุชื่อตารางที่ DELETE งบควรเน้น. หรือระบุเงื่อนไขใดๆ ที่ต้องปฏิบัติตามก่อนที่จะลบบันทึก

นี่คือไวยากรณ์สำหรับ DELETE คำสั่ง:

DELETE FROM table_name WHERE conditions_are_met;

คำสั่งลบไม่มีคำสั่ง "เลิกทำ" เมื่อลบบันทึกออกจากฐานข้อมูลแล้ว จะไม่สามารถกู้คืนได้

คำสั่ง WHERE ให้คุณระบุได้ว่าเรคคอร์ดใดควรถูกลบ สิ่งนี้ใช้ไวยากรณ์เดียวกับ SQL WHERE คำสั่งกับคำสั่งอื่นๆ เช่น SQL INSERT หรือ UPDATE .

ลบ คำสั่งไม่ลบตาราง มันจะลบระเบียนภายในตารางนั้น

มาดูตัวอย่างของ SQL DELETE คำสั่ง

ลบตัวอย่าง SQL แถว

หากเราต้องการลบเฉพาะระเบียนที่ตรงกับชุดเงื่อนไขบางอย่าง เราสามารถทำได้โดยการระบุ WHERE ข้อ สมมติว่าเราได้ตัดสินใจว่า การตลาด ควรรวมแผนกเป็นฝ่ายขาย

ขณะนี้ตารางของเรามีบันทึกดังต่อไปนี้:

ชื่อ หัวเรื่อง แผนก_id
จอห์น
การตลาด
2
รีเบคก้า ยอดขาย 3

เราจะใช้แบบสอบถาม DELETE เพื่อลบ การตลาด แผนกจากรายการของเรา:

DELETE FROM company_departments WHERE title = 'Marketing';

เราสามารถตรวจสอบว่าบันทึกของเราถูกลบโดยใช้คำสั่ง SQL SELECT หรือไม่ ชุดผลลัพธ์ของเราคือ:

ชื่อ หัวเรื่อง แผนก_id
รีเบคก้า ยอดขาย 3

บันทึกพนักงานของ Rebecca ไม่ได้รับผลกระทบจากการดำเนินการ DELETE ของเรา เนื่องจากเราลบเฉพาะผู้ที่มีชื่อเท่ากับ "การตลาด" แต่บันทึกของจอห์นหายไป นี่เป็นเพราะว่าจอห์นทำงานให้กับแผนกการตลาด

ในกรณีนี้ เราได้ลบระเบียนเดียว หากมีพนักงานในแผนกการตลาดเพิ่มขึ้น บันทึกของพวกเขาก็จะถูกลบออกไปด้วย

ลบตัวอย่าง SQL แถวทั้งหมด

สมมติว่าเราต้องการลบบันทึกทั้งหมดใน company_departments ของเรา เนื่องจากเรากำลังอยู่ระหว่างการปรับโครงสร้างองค์กร เราสามารถใช้คำสั่งนี้เพื่อลบบันทึกเหล่านั้น:

DELETE FROM company_departments;

แบบสอบถามนี้จะลบแถวทั้งหมดในตารางของเรา company_departments . เนื่องจากเราไม่ได้ระบุเงื่อนไขใดๆ ที่จะต้องปฏิบัติตามก่อนที่จะลบเรกคอร์ด หากคุณละเว้นคำสั่ง where จาก DELETE . ใดๆ คำสั่งจะลบแถวทั้งหมดในตาราง

หากเราสอบถาม company_departments . ของเรา ตารางเพื่อค้นหาพนักงานที่มีชื่อ การตลาด เราจะเห็นว่าไม่มีบันทึก:

ชื่อ หัวเรื่อง แผนก_id



(0 แถว)



บทสรุป

คำสั่ง SQL DELETE ลบแถวออกจากฐานข้อมูล คำสั่งนี้จะลบแถวทั้งหมดออกจากฐานข้อมูล เว้นแต่คุณจะระบุคำสั่ง WHERE คำสั่ง WHERE ให้คุณควบคุมได้ว่าจะลบระเบียนใด

ในบทช่วยสอนนี้ เราได้พูดถึงพื้นฐานของการสร้างแถวใน SQL , และ. จากนั้นเราได้พูดคุยถึงวิธีการใช้ DELETE คำสั่งลบแถวออกจาก SQL โต๊ะ. เราได้พูดคุยกันถึงวิธีที่คุณสามารถลบบันทึกตามเงื่อนไขบางอย่าง และลบข้อมูลทั้งหมดในตารางได้

คุณต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ SQL หรือไม่? ดูคู่มือ How to Learn SQL ฉบับสมบูรณ์สำหรับรายการแหล่งข้อมูลการเรียนรู้ชั้นนำและหลักสูตรออนไลน์