..


ลิงก์ผู้สนับสนุน

การปรับปรุงของสองคนหรือมากกว่าตาราง

บทความที่เขียนโดย Max Bossi

การใช้คำสั่ง UPDATE เราได้มีโอกาสที่จะกระทำในระเบียนที่มีอยู่และแก้ไข
ตัวอย่างเช่นสมมติมีในฐานข้อมูลของเรา phone_numbers ตารางที่มีโครงสร้างเช่นนี้ :

  • ชื่อ
  • โทรศัพท์
และบอกว่าของเรา ตารางที่มีประชากรอยู่กับ 3 บันทึก :

ชื่อ โทรศัพท์
Rossi มาริโอ 123.456789
Bianchi อันโตนิโอ 987.654321
Verdi Claudio 321.654987

ตอนนี้ขอบอกว่านาย จอห์นสมิ ธ ได้ย้ายไปและจึงมีการเปลี่ยนแปลงหมายเลขโทรศัพท์ ที่จะปรับสมุดโทรศัพท์ของเราที่เราใช้แบบสอบถามเช่นนี้ :





 UPDATE







 phone_numbers







 กันยายน







 โทรศัพท์ = '213 .698547'







 WHERE







 ชื่อ ='John Doe'



เพื่อให้ห่างไกลไม่มีอะไรใหม่
สมมติว่าขณะนี้เรามีตารางที่เรียกว่าที่อยู่ดังต่อไปนี้มีโครงสร้างอื่น :
  • ชื่อ
  • โดย
  • เมือง
  • จังหวัด
สมมติว่าแล้วว่าตารางนี้เป็นประชากรที่มีอยู่แล้วมี 3 ระเบียนที่ตรงกันกับที่อยู่ของสามเพื่อนอยู่แล้วในตารางอื่น ๆ :

ชื่อ โดย คำพูด จังหวัด
Rossi มาริโอ Via Roma 11 Turin TO
Bianchi อันโตนิโอ Via Garibaldi 2 Gallarate เวอร์จิเนีย
Verdi Claudio Piazza Cavour 4 โคโม โคโลราโด

หลังจากที่แนะนำยาวนี้เรามาถึงคำถามที่จะช่วยให้ชื่อเพื่อบทความนี้ : ฉันสามารถ update สองตารางพร้อมกันเช่นการใช้แบบสอบถามเดียวแทนที่จะเป็นสอง?
Simple, การใช้ JOIN ในขั้นตอนการ UPDATE ให้!

กลับมาที่ตัวอย่างแรกที่เราใช้แบบสอบถามเช่นนี้ :






 UPDATE







 phone_numbers







 INNER JOIN







 ที่อยู่







 ON







 indirizzi.nome numeri_di_telefono.nome =







 กันยายน







 numeri_di_telefono.telefono = '213 .698547',







 indirizzi.via ='สาธารณรัฐสแควร์ 5',







 indirizzi.citta ='ลอนดอน'







 indirizzi.prov ='MI'







 WHERE







 numeri_di_telefono.nome ='John Doe'



หลังจากที่รันการปรับปรุงที่เลือกแบบสอบถามการตรวจสอบโดยทั้งสองแตกต่างกันในสองตาราง ที่นี่ผลของพวกเขา (เน้นด้วยสีเหลือง) มีดังนี้ :

1) ตาราง phone_numbers

 



 SELECT * FROM phone_numbers

 
ชื่อ โทรศัพท์
Rossi มาริโอ 213.698547
Bianchi อันโตนิโอ 987.654321
Verdi Claudio 321.654987

ตารางที่อยู่ 1)
 



 SELECT * FROM ที่อยู่

 
ชื่อ โดย คำพูด จังหวัด
Rossi มาริโอ 5 สแควร์ของสาธารณรัฐ มิลาน มิชิแกน
Bianchi อันโตนิโอ Via Garibaldi 2 Gallarate เวอร์จิเนีย
Verdi Claudio Piazza Cavour 4 โคโม โคโลราโด

ประโยชน์ในทางปฏิบัติของเทคนิคของการปรับปรุงหลายตารางความสัมพันธ์ระหว่างพวกเขาโดยใช้ JOINs คือการลดภาระงานของเซิร์ฟเวอร์ขึ้นอยู่กับหลักการง่ายๆที่ว่า"แบบสอบถามจะดีกว่าสอง."

ในประเภทเดียวกัน ...
E - Learning
MS Access (Advanced) MS Access (Advanced)
เรียนรู้วิธีสร้างและจัดการฐานข้อมูลอย่างรวดเร็วและง่ายดาย เริ่มต้นจาก 29 €
MySQL (Course) MySQL (Course)
การบริหารจัดการฐานข้อมูลโอเพนซอร์ส จาก 39 €
SQL และฐานข้อมูล (หลักสูตร) SQL และฐานข้อมูล (หลักสูตร)
การสร้างและจัดการฐานข้อมูลเชิงสัมพันธ์ จาก 39 €
ลิงก์ผู้สนับสนุน