SQL Server дээрх декарт бүтээгдэхүүн гэж юу вэ?
SQL Server дээрх декарт бүтээгдэхүүн гэж юу вэ?

Видео: SQL Server дээрх декарт бүтээгдэхүүн гэж юу вэ?

Видео: SQL Server дээрх декарт бүтээгдэхүүн гэж юу вэ?
Видео: SQL заавар 13 JOIN-ийн танилцуулга, картезийн бүтээгдэхүүн 2024, Арваннэгдүгээр
Anonim

The Декарт бүтээгдэхүүн , мөн а гэж нэрлэдэг хөндлөн -join, асуулгад жагсаасан бүх хүснэгтийн бүх мөрийг буцаана. Эхний хүснэгтийн мөр бүрийг хоёр дахь хүснэгтийн бүх мөртэй хослуулсан. Энэ нь хоёр хүснэгтийн хооронд тодорхой хамаарал байхгүй үед тохиолддог. AUTHOR болон STORE хүснэгтүүд хоёулаа арван мөртэй.

Үүнийг харгалзан үзэхэд Cross join нь декартын бүтээгдэхүүнтэй ижил үү?

Аль аль нь нэгддэг өгөх адилхан үр дүн. Загалмай - нэгдэх SQL 99 юм нэгдэх болон Декарт бүтээгдэхүүн нь Oracle-ийн өмч юм нэгдэх . А хөндлөн - нэгдэх Энэ нь 'хаана' гэсэн заалт байхгүй бол үүнийг өгдөг Декарт бүтээгдэхүүн . Декарт бүтээгдэхүүн үр дүнгийн багц нь эхний хүснэгтийн мөрийн тоог хоёр дахь хүснэгтийн мөрийн тоогоор үржүүлсэн байна.

Нэмж хэлэхэд, жишээн дээр SQL-д хөндлөн нэгдэх гэж юу вэ? The CROSS NOIN Эхний хүснэгтийн (T1) мөр бүрийг хоёр дахь хүснэгтийн (T2) мөр бүртэй холбосон. Өөрөөр хэлбэл, хөндлөн нэгдэх хоёр хүснэгтээс мөрүүдийн декартын үржвэрийг буцаана. The CROSS NOIN Эхний хүснэгтээс (T1) мөр авч, дараа нь хоёр дахь хүснэгтийн (T2) мөр бүрт шинэ мөр үүсгэнэ.

Үүнээс гадна декарт бүтээгдэхүүн юунаас үүдэлтэй вэ?

Дотор КАРТЕЗ JOIN-д нэг хүснэгтийн мөр бүрийг нөгөө хүснэгтийн мөр бүрт нэгдэх боломжтой. WHERE нөхцөл байхгүй тохиолдолд the КАРТЕЗ JOIN нь а шиг ажиллах болно КАРТЕЗИЙН БҮТЭЭГДЭХҮҮН . өөрөөр хэлбэл үр дүнгийн багц дахь мөрүүдийн тоо нь бүтээгдэхүүн хоёр хүснэгтийн эгнээний тоо.

Бүтээгдэхүүний нэгдэл гэж юу вэ?

-ийн тодорхойлолт Бүтээгдэхүүнийг нэгтгэх The бүтээгдэхүүн нэгдэх шаардлага хангасан мөр бүрийг нэг хамаарлаас нөгөө харилцаанаас шаардлага хангасан мөр бүрийг харьцуулж, WHERE предикатын шүүлтүүрт тохирох мөрүүдийг хадгалдаг. Асуулгад WHERE заалтыг заагаагүй байна. The нэгдэх тэгш бус байдлын нөхцөлд байна. ORed байдаг нэгдэх нөхцөл.

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