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

คำสั่ง SQL UPDATE: คู่มือฉบับสมบูรณ์

วิธีใช้คำสั่ง SQL UPDATE

หนึ่งในฟีเจอร์หลักของฐานข้อมูลคือความสามารถในการอัปเดตค่าที่จัดเก็บไว้ คุณสามารถเปลี่ยนแปลงค่าของเรคอร์ดใดๆ ในฐานข้อมูลได้ตลอดเวลา ค่าภายในฐานข้อมูล SQL จะถูกเปลี่ยนแปลงโดยใช้คำสั่ง SQL UPDATE

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

SQL UPDATE คืออะไร?

คำสั่ง UPDATE ใช้สำหรับอัปเดตข้อมูลที่มีอยู่ในตาราง SQL

สามารถนำไปใช้แก้ไขทุกเรคอร์ดในฐานข้อมูล หรือเฉพาะเรคอร์ดที่ตรงตามเงื่อนไขที่กำหนด โครงสร้างทั่วไปของคำสั่ง SQL UPDATE มีดังนี้:

UPDATE table SET column1 = value1, column2 = value2... WHERE condition(s);

table หมายถึงชื่อตารางที่คุณต้องการอัปเดตเรคอร์ด

คำสั่งหลังคีย์เวิร์ด SET คือชื่อคอลัมน์ที่ต้องการอัปเดต ตามด้วยเครื่องหมายเท่ากับ และค่าที่ต้องการกำหนดให้คอลัมน์นั้น หากต้องการอัปเดตหลายคอลัมน์ ให้คั่นแต่ละคำสั่งหลัง SET ด้วยเครื่องหมายจุลภาค

มาดูตัวอย่างการใช้งาน SQL UPDATE กัน เรามีตารางชื่อ employees ซึ่งมีข้อมูลดังนี้:

idnametitlehired_datesalary
1Thomas CarltonSales Associate09-08-201928000
2Lisa InglesSales Associate12-09-201928000
3Victoria CarlisleSales Director04-02-201736000

SQL UPDATE ในการทำงานจริง

Lisa Ingles เพิ่งแต่งงาน ทำให้นามสกุลเปลี่ยนเป็น Lisa Nelson เราสามารถใช้คำสั่ง UPDATE เพื่อเปลี่ยนชื่อของเธอในตาราง employees:

UPDATE employees SET name = 'Lisa Nelson' WHERE id = 2;

คำสั่งนี้เปลี่ยนคอลัมน์เดียวคือ name โดยใช้ clause SET มาดูข้อมูลของเธอเพื่อยืนยันว่าการเปลี่ยนแปลงสำเร็จ:

idnametitlehired_datesalary
2Lisa NelsonSales Associate12-09-201928000

นามสกุลของ Lisa ได้รับการเปลี่ยนแปลงแล้ว

อัปเดตหลายเรคอร์ดพร้อมกัน

คุณสามารถอัปเดตหลายเรคอร์ดในตารางด้วยคำสั่ง UPDATE เพียงคำสั่งเดียว โดยปกติจะใช้คำสั่ง WHERE เพื่อให้แน่ใจว่าเฉพาะเรคอร์ดที่ต้องการเท่านั้นที่ถูกอัปเดต

ทีมผู้บริหารตัดสินใจเปลี่ยนตำแหน่ง "Sales Associate" ให้กลายเป็น "Sales Representatives" ทั้งหมด คำสั่ง UPDATE ที่ต้องใช้:

UPDATE employees SET title = 'Sales Representative' WHERE title = 'Sales Associate';

คำสั่งนี้เปลี่ยนค่า title เป็น "Sales Representative" สำหรับทุกคนที่เป็น Sales Associate มาตรวจสอบผลลัพธ์:

idnametitlehired_datesalary
1Thomas CarltonSales Representative09-08-201928000
2Lisa NelsonSales Representative12-09-201928000
3Victoria CarlisleSales Director04-02-201736000

ตำแหน่งของ Thomas Carlton และ Lisa Nelson เปลี่ยนแล้ว ส่วน Victoria ยังคงเป็น Sales Director เพราะเธอไม่ได้อยู่ในเงื่อนไข

อัปเดตทุกเรคอร์ดในตาราง

โดยค่าเริ่มต้น คำสั่ง UPDATE จะเปลี่ยนแปลงทุกเรคอร์ดในฐานข้อมูล คุณต้องระบุคำสั่ง WHERE เพื่อจำกัดขอบเขต

ทุกพนักงานในบริษัทได้รับการเพิ่มเงินเดือน 5% คำสั่ง UPDATE ที่ใช้:

UPDATE employees SET salary = salary * 1.05;

คำสั่งนี้ปรับค่า salary ในทุกเรคอร์ด โดยใช้ตัวคูณ (*) เพิ่มเงินเดือน 1.05 เท่า เทียบเท่ากับการเพิ่ม 5% มาดูผลลัพธ์:

idnametitlehired_datesalary
1Thomas CarltonSales Representative09-08-201929400
2Lisa NelsonSales Representative12-09-201929400
3Victoria CarlisleSales Director04-02-201737800

เงินเดือนของพนักงานทุกคนได้รับการปรับปรุงเรียบร้อยแล้ว

สรุป

คำสั่ง UPDATE ใช้แก้ไขข้อมูลหนึ่งหรือหลายเรคอร์ดในฐานข้อมูล ปกติจะใช้ร่วมกับคำสั่ง WHERE เพื่อระบุเรคอร์ดที่ต้องการแก้ไขอย่างแม่นยำ

หากต้องการทดสอบความเข้าใจ ลองเขียนคำสั่งดังต่อไปนี้:

  • เพิ่มเงินเดือนของ Sales Representative ทุกคน 2%
  • เปลี่ยนตำแหน่งของ Lisa เป็น Senior Sales Representative
  • เปลี่ยนวันเข้าทำงานของ Victoria Carlisle เป็น 04-03-2017

ตอนนี้คุณพร้อมที่จะใช้คำสั่ง UPDATE อย่างมืออาชีพแล้ว!