14-amaliy mashg‘ulot Ko’pjadvalli amallardan foydalanish. Ishdan maqsad


chap_jadval CROSS JOIN o`ng_jadval


Download 209 Kb.
bet3/3
Sana28.12.2022
Hajmi209 Kb.
#1016916
1   2   3
Bog'liq
14-amaliy

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

A.AuthorID

A.AuthorName

B.BookID

B.BookName

1

Bruce Eckel

3

Modern Operating System

1

Bruce Eckel

1

Thinking in Java

1

Bruce Eckel

3

Computer Architecture

1

Bruce Eckel

4

Programming in Scala

2

Robert Lafore

3

Modern Operating System

2

Robert Lafore

1

Thinking in Java

2

Robert Lafore

3

Computer Architecture

2

Robert Lafore

4

Programming in Scala

3

Andrew Tanenbaum

3

Modern Operating System

3

Andrew Tanenbaum

1

Thinking in Java

3

Andrew Tanenbaum

3

Computer Architecture

3

Andrew Tanenbaum

4

Programming in Scala

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:
1   2   3




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling