คอมพิวเตอร์, การเขียนโปรแกรม
ผู้ประกอบการ SQL INNER JOIN: ตัวอย่างของไวยากรณ์และคุณสมบัติ
การพัฒนาฐานข้อมูลใด ๆ รวมถึงไม่เพียงการสร้างและการกรอกของตารางที่มีข้อมูลต่างๆ แต่ยังเพิ่มเติมการทำงานกับข้อมูล เพื่อดำเนินการอย่างถูกต้องความหลากหลายของงานที่ทางเลือกของข้อมูลจากตารางและการรายงานการใช้การเลือกมาตรฐานการออกแบบ
ดึงข้อมูลจากตาราง
ถ้าเราพิจารณาปัญหาของทางเลือกของข้อมูลหรือการก่อสร้างของรายงานที่คุณสามารถกำหนดระดับของความซับซ้อนของการดำเนินการ ตามกฎแล้วเมื่อต้องรับมือกับร้ายแรง (ตามปริมาตร) ฐานข้อมูลซึ่งจะเกิดขึ้นตัวอย่างเช่นในร้านค้าออนไลน์หรือ บริษัท ขนาดใหญ่, การเลือกข้อมูลที่ไม่ จำกัด เพียงตารางเดียว เป็นกฎที่ตัวอย่างอาจจะมาจากจำนวนที่ค่อนข้างใหญ่ของตารางไม่ได้เชื่อมโยงเพียง แต่ยังซ้อนคำสั่ง / sub-คำสั่งซึ่งจะทำให้การเขียนโปรแกรมขึ้นอยู่กับงานของตน สำหรับตัวอย่างของตารางหนึ่งสามารถใช้โครงสร้างที่ง่ายที่สุด:
* เลือกจากบุคคล |
ที่บุคคล - ชื่อของตารางจากการที่คุณต้องการที่จะทำให้การดึงข้อมูล
แต่ถ้าคุณจะต้องเลือกข้อมูลจากหลายตารางซึ่งเป็นหนึ่งในมาตรฐานการออกแบบสามารถใช้ในการเข้าร่วมหลายตาราง
วิธีการเชื่อมต่อตารางเพิ่มเติม
ถ้าเราพิจารณาการใช้งานของโครงสร้างดังกล่าวในระดับหลักที่เราสามารถแยกแยะความแตกต่างกลไกต่อไปนี้เพื่อเชื่อมต่อจำนวนที่ต้องการสำหรับตารางตัวอย่างคือ:
- ผู้ประกอบการเข้าร่วมภายใน
- LEFT JOIN หรือมันเป็นวิธีการบันทึกที่สองซ้ายด้านนอกเข้าร่วม
- ครอสเข้าร่วมกับ
- เต็มรูปแบบเข้าร่วม
ใช้ประกอบการที่จะเข้าร่วมในการปฏิบัติตารางคุณสามารถเรียนรู้ด้วยการพิจารณาการใช้คำสั่ง SQL - Inner เข้าร่วม ตัวอย่างของการใช้งานจะเป็นดังนี้:
* เลือกจากบุคคล ภายในแบ่งเข้าร่วมใน Su_Person = Pe_ID |
ภาษา SQL และเข้าร่วม Inner เข้าร่วมกับผู้ประกอบการสามารถนำมาใช้ไม่เพียง แต่สำหรับการรวมสองคนหรือมากกว่าตาราง แต่ยังให้การเชื่อมต่อแบบสอบถามย่อยอื่น ๆ ซึ่งช่วยอำนวยความสะดวกในการทำงานของผู้ดูแลระบบฐานข้อมูลและเป็นกฎที่มีนัยสำคัญสามารถเร่งดำเนินการเฉพาะโครงสร้างแบบสอบถามที่ซับซ้อน
รวมข้อมูลในสายตารางโดยสาย
ถ้าเราพิจารณาการเชื่อมต่อของจำนวนมากของการย่อยคำสั่งและข้อมูลที่ประกอบเป็นเส้นตารางเดียวโดยสายคุณยังสามารถใช้สหภาพประกอบการและยูเนี่ยนทั้งหมด
การใช้งานของโครงสร้างเหล่านี้จะขึ้นอยู่กับนักพัฒนาที่จะกำหนดวัตถุประสงค์และผลที่ว่าเขาต้องการที่จะประสบความสำเร็จในท้ายที่สุด
รายละเอียดด้านในเข้าร่วมกับผู้ประกอบการ
ในกรณีส่วนใหญ่จะรวมหลายตารางในภาษา SQL ที่ใช้โดยผู้ประกอบการเข้าร่วมภายใน รายละเอียดด้านในเข้าร่วมใน SQL ค่อนข้างง่ายที่จะเข้าใจโปรแกรมเมอร์เฉลี่ยที่เป็นเพียงการเริ่มที่จะเข้าใจฐานข้อมูล ถ้าเราพิจารณารายละเอียดของกลไกของการทำงานของโครงสร้างนี้ที่เราได้รับภาพต่อไปนี้ ผู้ประกอบการลอจิกเป็นทั้งถูกสร้างขึ้นบนข้ามและเป็นไปได้ของการสุ่มตัวอย่างเฉพาะข้อมูลที่มีอยู่ในแต่ละตารางที่รวมอยู่ในแบบสอบถาม
ถ้าเราดูที่ชนิดของการทำงานนี้ในแง่ของการตีความกราฟิกเราขอรับ SQL Inner เข้าร่วมกับผู้ประกอบการโครงสร้างตัวอย่างซึ่งสามารถเห็นได้จากโครงการดังต่อไปนี้:
ตัวอย่างเช่นเรามีสองตารางแสดงแผนผังในรูป พวกเขาในทางกลับกันมีจำนวนที่แตกต่างกันของรายการ ในแต่ละตารางมีสาขาที่เกี่ยวข้อง ถ้าเราพยายามที่จะอธิบายการทำงานของผู้ประกอบการบนพื้นฐานของการวาดภาพที่ผลลัพธ์ที่ปรากฏจะเป็นชุดของระเบียนจากตารางที่สองที่ห้องมีสาขาที่เชื่อมต่อตรง ใส่เพียงแบบสอบถามส่งกลับเฉพาะระเบียน (ในจำนวนสองตาราง) ซึ่งมีข้อมูลอยู่ในอันดับหนึ่งของตาราง
ไวยากรณ์ของ Inner เข้าร่วม
ดังที่ได้กล่าวไว้ก่อนหน้านี้ผู้ประกอบการภายในเข้าร่วมคือไวยากรณ์ที่ง่ายผิดปกติ สำหรับองค์กรของความสัมพันธ์ระหว่างตารางภายในตัวอย่างเดียวจะพอเพียงที่จะจำและใช้แผนภาพต่อไปของการก่อสร้างของผู้ประกอบการซึ่งเป็นที่ที่กำหนดไว้ในบรรทัดเดียวของซอฟแวร์ SQL รหัสคือ:
- Inner เข้าร่วม [ชื่อตาราง] ใน [เขตข้อมูลคีย์ของตารางที่เชื่อมต่อ] = [คีย์ฟิลด์ pluggable ของตาราง]
เพื่อการสื่อสารในคำสั่งนี้ส่วนใหญ่จะใช้กุญแจตาราง เป็นกฎในกลุ่มของตารางที่เก็บข้อมูลเกี่ยวกับพนักงานที่อธิบายไว้ก่อนหน้าคนแบ่งและมีอย่างน้อยหนึ่งระเบียนที่คล้ายกัน ดังนั้นเวลามองใกล้ผู้ประกอบการที่เข้าร่วมกับ SQL ภายในตัวอย่างที่ได้รับการแสดงเล็ก ๆ น้อย ๆ ก่อนหน้านี้
คำอธิบายตัวอย่างและการเชื่อมต่อไปยังตารางตัวอย่างเสียง
เรามีตารางบุคคลซึ่งเก็บข้อมูลเกี่ยวกับพนักงานทุกคนที่ทำงานใน บริษัท ทราบเพียงว่ามีคีย์หลักของตารางเป็นสนาม - Pe_ID เพียงแค่เกี่ยวกับมันและจะไปมัด
แบ่งตารางที่สองจะเก็บข้อมูลเกี่ยวกับสำนักงานที่ทำงานของพนักงาน เธอในการเปิดการเชื่อมต่อผ่าน Su_Person เขตข้อมูลตารางบุคคล นี้หมายความว่าอย่างไร ขึ้นอยู่กับสคีข้อมูลอาจกล่าวได้ว่าในหน่วยตารางสำหรับแต่ละระเบียนในตาราง "พนักงาน" จะเป็นข้อมูลเกี่ยวกับภาควิชาที่พวกเขาทำงาน มันเป็นเพราะการสื่อสารนี้และจะทำงานร่วมกับผู้ประกอบการภายใน
สำหรับการใช้งานที่ง่ายขึ้นของการพิจารณาผู้ประกอบการเข้าร่วมกับ SQL ภายใน (ตัวอย่างของการใช้งานสำหรับหนึ่งหรือสองตาราง) ถ้าเราพิจารณาตัวอย่างของตารางเดียวกันแล้วทั้งหมดค่อนข้างง่าย:
* เลือกจากบุคคล ภายในแบ่งเข้าร่วมใน Su_Person = Pe_ID |
ตัวอย่างเชื่อมต่อทั้งสองตารางและแบบสอบถามย่อย
ผู้ประกอบการเข้าร่วมกับ SQL ภายในตัวอย่างของการที่มีการใช้งานเพื่อดึงข้อมูลจากหลายตารางสามารถจัดในลักษณะข้างต้นก็คือการทำงานในภาวะแทรกซ้อนที่เล็ก ๆ น้อย ๆ ของหลักการ เพื่อซับซ้อนงานของทั้งสองตาราง ตัวอย่างเช่นเรามีตารางออกที่เก็บข้อมูลเกี่ยวกับทุกหน่วยงานในแต่ละฝ่าย ในตารางนี้บันทึกจำนวนหมวดและจำนวนพนักงานและจะต้องได้รับการเสริมโดยใช้ชื่อของข้อมูลตัวอย่างของแต่ละแผนก มองไปข้างหน้าจะมีมูลค่าการบอกว่าคุณสามารถใช้สองวิธีการที่จะแก้ปัญหานี้
วิธีแรกคือการเชื่อมต่อตารางแผนกที่จะลิ้มลอง จัดระเบียบคำขอในกรณีนี้อาจเป็นดังนี้
เลือก Pe_ID, Pe_Name, Su_Id, Su_Name, Dep_ID, Dep_Name จากบุคคล ภายในแบ่งเข้าร่วมใน Su_Person = Pe_ID Inner เข้าร่วมออกเดินทางใน Su_Depart = Dep_ID และ Pe_Depart = Dep_ID |
วิธีที่สองของการแก้ปัญหา - คือการใช้แบบสอบถามย่อยที่ไม่ได้ข้อมูลทั้งหมดจะถูกเลือกจากตารางแผนก แต่เฉพาะที่จำเป็น นี้เป็นในทางตรงกันข้ามกับวิธีแรกก็จะช่วยลดเวลาของการร้องขอ
เลือก Pe_ID, Pe_Name, Su_Id, Su_Name, Dep_ID, Dep_Name จากบุคคล ภายในแบ่งเข้าร่วมใน Su_Person = Pe_ID รวมภายใน (Select Dep_ID, Dep_Name, Pe_Depart จากออกเดินทาง) เช่น T บน Su_Depart = Dep_ID และ Pe_Depart = Dep_ID |
มันเป็นที่น่าสังเกตว่าวิธีการดังกล่าวไม่สามารถเพิ่มความเร็วในการร้องขอการทำงาน บางครั้งมีกรณีที่มีความจำเป็นต้องใช้ข้อมูลตัวอย่างเพิ่มเติมลงในตารางชั่วคราว (ถ้าปริมาณที่มีขนาดใหญ่เกินไป) และจากนั้นได้ร่วมกับกลุ่มตัวอย่างหลัก
ตัวอย่างของการใช้ Inner เข้าร่วมกับผู้ประกอบการตัวอย่างจากจำนวนมากของตาราง
การก่อสร้างเกี่ยวกับการใช้คำสั่งที่ซับซ้อนสำหรับจำนวนเงินที่สำคัญตัวอย่างของตารางข้อมูลและการเชื่อมต่อระหว่างกัน subqueries ความต้องการเหล่านี้สามารถตอบสนอง SQL Inner เข้าร่วมกับไวยากรณ์ ตัวอย่างการใช้งานของผู้ประกอบการในกรณีนี้จะมีความซับซ้อนตัวอย่างไม่เพียง แต่สถานที่จัดเก็บข้อมูลจำนวนมาก แต่ยังมีจำนวนมากของ subqueries ซ้อนกัน สำหรับตัวอย่างที่เป็นรูปธรรมคุณสามารถใช้ข้อมูลจากกลุ่มตัวอย่างของตารางระบบ (Inner เข้าร่วมกับคำสั่ง SQL) ตัวอย่าง - 3 ของตาราง - ในกรณีนี้จะมีโครงสร้างที่ค่อนข้างซับซ้อน
ในกรณีนี้การเชื่อมต่อ (ตารางหลัก) และสามแนะนำเพิ่มเติมเงื่อนไขการเลือกข้อมูลหลาย
เมื่อใช้ภายในเข้าร่วมกับผู้ประกอบการควรจำไว้ว่าที่ซับซ้อนมากขึ้นแบบสอบถามอีกต่อไปมันจะดำเนินการดังนั้นคุณควรมองหาวิธีการที่จะดำเนินการได้อย่างรวดเร็วและแก้ปัญหา
ข้อสรุป
ในท้ายที่สุดผมอยากจะบอกว่าสิ่งหนึ่งที่: ทำงานกับฐานข้อมูล - มันไม่ได้เป็นสิ่งที่ยากที่สุดในการเขียนโปรแกรมดังนั้นหากคุณต้องการทุกคนเดียวจะสามารถที่จะได้รับความรู้ในการสร้างฐานข้อมูลและเมื่อเวลาผ่านไปได้รับประสบการณ์ที่คุณจะได้รับในการทำงานกับพวกเขาในระดับมืออาชีพ .
Similar articles
Trending Now