Дотоод холбоос ба байгалийн холбоосын ялгаа

Агуулгын хүснэгт:

Дотоод холбоос ба байгалийн холбоосын ялгаа
Дотоод холбоос ба байгалийн холбоосын ялгаа

Видео: Дотоод холбоос ба байгалийн холбоосын ялгаа

Видео: Дотоод холбоос ба байгалийн холбоосын ялгаа
Видео: Традиционный заброшенный португальский особняк с портретами - полный семейной истории! 2024, Арваннэгдүгээр
Anonim

Inner Join болон Natural Join хоёрын гол ялгаа нь Inner Join нь асуулгад заасан тэгш байдлын нөхцлийн дагуу тохирох өгөгдөлд тулгуурлан үр дүнг өгдөг бол Natural Join нь ижил нэртэй багананд тулгуурлан үр дүнг өгдөгт оршино. Нэгдэх хүснэгтэд ижил төрлийн өгөгдлүүд байна.

DBMS нь өгөгдлийг хялбархан хадгалах, сэргээх, удирдах боломжийг олгодог. Энэ нь өгөгдлийг хүснэгт хэлбэрээр хадгалдаг. Хүснэгт бүр мөр, баганаас бүрдэнэ. Мөрүүд нь объект бүрийг, баганууд нь шинж чанаруудыг илэрхийлдэг. Оюутны мэдээллийн сан гэж үзье. Мөр бүр нь сурагчийг төлөөлдөг. Баганууд нь id, нэр, зэрэг, нас зэрэг шинж чанаруудыг илэрхийлдэг. DBMS нь хүснэгтүүдийн цуглуулга бөгөөд хүснэгт бүр нь гадаад түлхүүр гэх мэт хязгаарлалтуудыг ашиглан холбоотой байдаг. Заримдаа ганц ширээ ашиглахад хангалтгүй байдаг. Олон хүснэгт ашиглах шаардлагатай нөхцөл байдал байдаг. Хоёр хүснэгтийг нэгтгэхийн тулд дор хаяж нэг багана нийтлэг байх ёстой. Хүснэгтүүдийн хослолыг нэгдэх гэж нэрлэдэг.

Inner Join гэж юу вэ?

Дотоод холболтын жишээ дараах байдалтай байна. Доорх оюутны ширээ байна.

Дотор холбоос ба байгалийн холбоосын ялгаа Зураг 1
Дотор холбоос ба байгалийн холбоосын ялгаа Зураг 1

Оюутны_мэдээллийн хүснэгт дараах байдалтай байна.

Дотоод холбоос ба байгалийн холбоосын ялгаа 2-р зураг
Дотоод холбоос ба байгалийн холбоосын ялгаа 2-р зураг

Дотоод холболтыг гүйцэтгэхийн тулд хоёр хүснэгтийн хооронд дор хаяж нэг таарч байх ёстой. id 1, 2, 3 нь хоёр хүснэгтэд нийтлэг байдаг. Тиймээс дотоод холболт хийх боломжтой.

Дотоод холболт ба байгалийн нэгдэл хоёрын ялгаа
Дотоод холболт ба байгалийн нэгдэл хоёрын ялгаа

Зураг 01: SQL-д нэгдэх

Энэ хоёр хүснэгтэд нэгдэх INNER JOIN асуулга дараах байдалтай байна.

СОНГОХоюутны

ДОТООД НЭГДЭХ student_info WHERE student.id=student_info.id;

Дээрх SQL командыг гүйцэтгэхэд дараах хүснэгт гарч ирнэ.

Дотор холбоос ба байгалийн холбоосын ялгаа 3-р зураг
Дотор холбоос ба байгалийн холбоосын ялгаа 3-р зураг

Natural Join гэж юу вэ?

Натурал холболтын жишээ дараах байдалтай байна. Доорх оюутны ширээ байна.

Дотор холболт ба байгалийн холбоосын ялгаа 4-р зураг
Дотор холболт ба байгалийн холбоосын ялгаа 4-р зураг

Оюутны_мэдээллийн хүснэгт дараах байдалтай байна.

Дотор холболт ба байгалийн холбоосын ялгаа 5-р зураг
Дотор холболт ба байгалийн холбоосын ялгаа 5-р зураг

Натурал холболтыг хийхийн тулд ижил нэртэй, ижил төрлийн өгөгдлийн багана байх ёстой. ID багана нь хоёр хүснэгтийн хувьд ижил байна. Тиймээс эдгээр хүснэгтүүдийг хоёуланг нь нэгтгэх боломжтой.

Энэ хоёр хүснэгтэд нэгдэх NATURAL JOIN асуулга дараах байдалтай байна.

СОНГОХоюутны NATURAL JOIN student_info;

Дээрх SQL командыг гүйцэтгэхэд дараах хүснэгт гарч ирнэ.

Дотор холбоос ба байгалийн холбоосын ялгаа 6-р зураг
Дотор холбоос ба байгалийн холбоосын ялгаа 6-р зураг

Дотоод нэгдэл болон байгалийн нэгдэл хоёрын хооронд ямар холбоотой вэ?

Байгалийн нэгдэл нь дотоод холболтын нэг төрөл юм

Дотоод холбоос болон байгалийн нэгдэл хоёр юугаараа ялгаатай вэ?

Дотоод нэгдэл нь асуулгад заасан тэгш байдлын нөхцлийн дагуу тохирох өгөгдөлд тулгуурлан үр дүнг өгдөг бол байгалийн нэгдэл нь нэгтгэх хүснэгтэд байгаа ижил нэртэй, ижил өгөгдлийн төрөлтэй баганад үндэслэн үр дүнг өгдөг. Түүнчлэн, дотоод нэгдэл болон байгалийн нэгдлийн синтакс өөр байна.

Хүснэгт1 нь id, нэр, хүснэгт2 нь id болон хотоос бүрдэх үед дотоод нэгдэл нь тохирох мөр бүхий үр дүнгийн хүснэгтийг өгнө. Энэ нь id, нэр, дахин ID болон хоттой байх болно. Нөгөө талаас, байгалийн нэгдэлд id, нэр, хот гэсэн баганатай тохирох мөр бүхий үр дүнгийн хүснэгтийг өгнө.

Хүснэгт хэлбэрийн дотоод холболт ба байгалийн холбоосын ялгаа
Хүснэгт хэлбэрийн дотоод холболт ба байгалийн холбоосын ялгаа

Хураангуй – Дотоод нэгдэл ба байгалийн нэгдэл

Дотоод нэгдэл болон байгалийн нэгдэл хоёрын гол ялгаа нь дотоод холболт нь SQL асуулгад заасан тэгш байдлын нөхцлийн дагуу тохирох өгөгдөлд тулгуурлан үр дүнг өгдөг бол байгалийн нэгдэл нь ижил нэртэй баганад тулгуурлан үр дүнг өгдөгт оршино. болон нэгдэх хүснэгтэд байгаа ижил төрлийн өгөгдлүүд.

Зөвлөмж болгож буй: