14-amaliy mashg‘ulot Ko’pjadvalli amallardan foydalanish. Ishdan maqsad
chap_jadval CROSS JOIN o`ng_jadval
Download 209 Kb.
|
14-amaliy
- Bu sahifa navigatsiya:
- A.AuthorID A.AuthorName B.BookID B.BookName
- UNION ALL
- DISTINCT(A-B)
chap_jadval CROSS JOIN o`ng_jadval
CROSS JOIN sintaksisi: SELECT maydon nomlari [,... n] FROM Jadval_1 CROSS JOIN Jadval _2 ON bog`liqlik_sharti Misol: SELECT * FROM Authors A CROSS JOIN Books B Natija
Biz JOIN orqali so`rovda jadvallarni gorizontal birlashtirib natijalarini olishni qarab chiqdik. Endi so`rov natijalarini UNION orqali vertikal birlashtirish amallarini qaraladi. Qisqacha aytganda jadvallarni JOIN yonma-yon, UNION ustma-ust birlashtiradi. UNION – turlicha jadvallardan qayta ishlangan natija beruvchi, lekin bir xil tuzulmga ega bo`lgan so`rovlarning natijalarini umumlashtiradi. Shunday ekan bunda har bir so`rovning ustunlari soni, ma`lumot turlariga ko`ra ustunlarning joylashuv tartibi mos bo`lishi kerak. Misol uchun, yuqori va ostki so`rovlar uchun sonli ustun ostida son, matnli ustun ostida matn va h.k. Vertikal jadvallarni birlashtirish amallari MBBT xususiyatlaridan kelib chiqqan holda amalga oshiriladi. Misol uchun MS SQL da quyidagi turlari mavjud: UNION ALL, UNION, EXCEPT, INTERSECT. UNION ALL – ikki to`plamdagi barcha qatorlarni birlashtiradi (A+B). Bu operator xuddi gorizontal birlashtirishdagi FULL JOIN ga o`xshaydi. UNION – ikki to`plamdan takrorlanmas (unikal) qatorlarni birlashtiradi. DISTINCT(A+B). Bu operator gorizontal birlashtirishdagi LEFT JOIN ga o`xshaydi. EXCEPT \ MINUS – yuqori jalvaldning unikal qatorlaridan quyi jadvalning unikal qatorlarini ayirib, yuqori jadval qatorlarini chiqaradi DISTINCT(A-B). Bu operator esa LEFT JOIN ga o`xshaydi. INTERSECT – yuqori va quyi jadvallarda mavduj unikal qatorlarni natija sifatida qaytaradi DISTINCT(A&B). Bu esa INNER JOIN ga o`xshaydi. Download 209 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling