Rеja Axborot tizimlari va ma'lumotlar bazasi



Yüklə 0,94 Mb.
səhifə57/153
tarix02.01.2022
ölçüsü0,94 Mb.
#44769
1   ...   53   54   55   56   57   58   59   60   ...   153
MBBT Qo'llanma

Kesishma. (∩). Bir vaqtning o’zida ikkala munosabatga ham tegishli bo’lgan barcha kortejlardan iborat yangi munosabatni qaytaradi. Kesishma quyidagicha tarzida ifodalanadi:



INTERSECT

Kesishma natijasining kardinal raqami A va B munosabatlarning kardinallik qiymatining eng kichigidan ko'p bo'lmaydi, daraja esa dastlabki munosabatlar darajalariga teng.


Ayirma (–). Berilgan ikkala munosabatdan faqat birinchisiga tegishli bo’lgan kortejlardan iborat yangi munosabatni qaytaradi.

Kesishma quyidagicha tarzida ifodalanadi:





MINUS
Natijaning kardinal raqami A raqamidan ko'p bo'lmaydi, daraja dastlabki munosabatlar darajalariga teng.

Yuqorida keltirilgan ta'riflarni misollar bilan tushuntiramiz. A va B munosabatlar jadvalda ko'rsatilganidek berilgan bo'lsin. Mos ravishda 4.2 va 4.3. StudID atributi asosiy kalit sifatida belgilangan. A va B mohiyatlari ustida birlashma, kesishma, ayirma amallarining bajarilish natijalari keltirilgan.


A munosabat

StudID

FISH

Guruh

123

Axrorov S. I.

301

124

Salimov J. I.

301

B munosabat



StudID

FISH

Guruh

123

Axrorov S. I.

301

127

Ne’matov A. B.

302

A va B munosabatlar o’rtasidagi birlashma amali.



.


StudID

FISH

Guruh

123

Axrorov S. I.

301

124

Salimov J. I.

301

127

Ne’matov A. B.

302

A va B munosabatlar o’rtasidagi kesishma amali.



.


StudID

FISH

Guruh

123

Axrorov S. I.

301

A va B munosabatlar o’rtasidagi ayirma amali.



.


StudID

FISH

Guruh

124

Salimov J. I.

301

Quyidagi fikrlarga e'tibor qaratish lozim. Birinchidan, kalitlar va atribut nomlarining merosxo'rligi, natijada paydo bo'lgan munosabatlar sarlavhasini aniqlashga imkon berdi. Ikkinchidan, A–B natijasi odatda B–A natijasiga teng bo'lmaydi.



Dekart ko’paytma. (*) – berilgan ikkala jadvaldagi kortejlarning kombinatsiyalaridan iborat yangi jadval hosil qiladi.

Bu holatda A va B munosabatlarda umumiy atributlar mavjud bo’lmasligi mumkin. Dekart ko’paytma quyidagicha tarzida ifodalanadi:





TIMES

Quyidagi A va B munosabatlarning Dekart ko’paytmasini topamiz.


A munosabat


StudID

FISH

123

Axrorov S. I.

124

Salimov J. I.

127

Ne’matov A. B.

B munosabat


Fan

Matematika

Fizika

A va B munosabatlar o’rtasidagi dekart ko’paytma amali.






StudID

FISH

Fan

123

Axrorov S. I.

Matematika

123

Axrorov S. I.

Fizika

124

Salimov J. I.

Matematika

124

Salimov J. I.

Fizika

127

Ne’matov A. B.

Matematika

127

Ne’matov A. B.

Fizika

Dekart ko’paytma amali natijasida hosil bo’lgan munosabat darajasi dastlabki munosabatlar darajalari yig'indisiga (2 + 1), kardinallik esa munosabatlarning kardinallik raqamlari ko'paytmasiga teng ekanligiga ishonch hosil qilishingiz mumkin. (3 × 2). Natijada paydo bo'lgan munosabat birlamchi kalitga ega (StudID, Fan), dastlabki aloqada esa bu oddiy edi.


Ushbu amalning quyidagi xususiyatlariga va quyida muhokama qilinadigan "ulash" operatsiyasiga e'tibor qaratish lozim. Agar A va B munosabatlari bir xil atributlarga ega bo'lsa, natijada ularni ajratish uchun siz bunday atribut nomini . shaklida tashkil qilishingiz mumkin:

A.FISH va B.FISH

Ba'zida bitta munosabat uchun dekart ko’paytma amalini bajarish kerak bo’lib qolishi mumkin. Bunday holda, yana bitta o'zgaruvchidan foydalanish kerak, aks holda natija atributlari nomlarini to'g'ri shakllantirish mumkin bo'lmaydi:

A1 = A, R = A × A1.

Bu erda "=" tayinlash operatorini bildiradi.
Tanlash. Berilgan jadvaldagi ma’lum shartni qanoatlantiruvchi barcha kortejlardan iborat yangi jadval hosil qiladi. Bu algebraik cheklanish hisoblanadi.

Shart =, >, < va boshqa taqqoslash amallari orqali beriladi. Tanlash amalining ko’rinishi quyidagicha bo’ladi:


A WHERE

Tanlash amali uchun bitta domendagi X va Y atributlari aniqlanishi kerak va θ operatori buning uchun mantiqiy bo'lishi kerak. Atributlardan biri yoki ikkalasining o'rniga konstanta qiymatni ko'rsatish mumkin.

Quyidagi berilgan A munosabat asosida Guruh raqami 302 ga teng bo’lgan kortejlarni topish talab qilinsin.


“Talaba” munosabati


StudID

FISH

Guruh

123

Axrorov S. I.

303

124

Jonibekov A. B.

302

122

Salimov J. I.

302

TALABA [Guruh = 302]


θ – tanlash amalining ta'rifini kengaytiraylik. θ -tanlovi uchun taqqoslash sharti mantiqiy biriktiruvchilar bilan bog'langan oddiy taqqoslashlarning ixtiyoriy sonini o'z ichiga olishi mumkin deb fikr yuritish mumkin. Agar kerak bo'lsa, qavslardan ham foydalanish mumkin.

Mantiqiy biriktiruvchilar uchun alternativ yozuv shakllari ham qo'llaniladi, ulardan biri matematik mantiqda qabul qilinganga yaqin, ikkinchisi ma'lumotlar bazasi so'rovlari tillarida yozuv shakliga yaqinroq:



  • “EMAS” yoki NOT tarzida yoziladi;

  • “VA” ?, yoki AND

  • “YOKI”, yoki OR.

Quyidagicha ifodani yozish mumkin:
TALABA WHERE ((Guruh = 302) AND (StudID<124))
Yoki xuddi shu yozuvni quyidagi ko’rinishda yozamiz:
TALABA [Guruh=302 & StudID < 124]
Natijada quyidagi kortej natija sifatida olinadi:
<123, Salimov J. I., 302>
Proyeksiya – berilgan jadvaldagi ba’zi kortejlarni istisno (chiqarib tashlash) qilib qolgan kortejlardan (podkortej) yangi munosabat hosil qiladi.

Shunday qilib, proyeksiya natijasida dastlabki munosabatlarning ba'zi bir atributlari chiqarib tashlanadi, shundan so'ng takroriy kortejlarni olib tashlash kerak bo'lishi mumkin.

A munosabatining proyeksiyasi V, W, Z atributlari bilan A[V, W, Z] bilan belgilanadi.

Masalan, yuqoridagi TALABA munosabatini biroz o'zgartiramiz va "F.I.SH" atributi bo'yicha proyeksiyani amalga oshiramiz.


TALABA munosabati


StudID

FISH

Guruh

123

Axrorov S. I.

303

124

Jonibekov A. B.

302

122

Salimov J. I.

302

125

Axrorov S. I.

301

Talaba munosabatiga Proyeksiya amalini qo’llash

TALABA [FISH]


FISH

Axrorov S. I.

Jonibekov A. B.

Salimov J. I.

Ko'rib turganingizdek, StudID va "Guruh" atributlarini olib tashlaganingizdan so'ng, nusxa ko'chirilgan <" Axrorov S. I."> kortejida bitta nusxada qoldirildi.


Ulash. Berilgan ikkala jadvalda umumiy qiymatga ega bo’lgan kortejlarning ulanishidan iborat yangi jadval hosil qiladi. Natijaviy jadvalda umumiy qiymat faqat bir marta qatnashadi. Bunday ulash tabiiy ulash deb ataladi (v).

Quyidagi ikki munosabatni qarab chiqamiz.


TALABA munosabati

StudID

FISH

Guruh

123

Axrorov S. I.

303

124

Jonibekov A. B.

302

127

Salimov J. I.

302

GURUH munosabati



GuruhSardor

Guruh

Jonibekov A. B.

302

Akramov B. I.

304

TALABA va GURUH munosabatlari orasida ulash amalini qo’llash


TALABA JOIN GURUH



StudID

FISH

Guruh

GuruhSardor

124

Jonibekov A. B.

302

Jonibekov A. B.

127

Salimov J. I.

302

Jonibekov A. B.

TALABA munosabatida "Guruh" atributining qiymati "344" ga teng kortejlar mavjud emasligi sababli, GURUH munosabatida qiymati "302" guruhi talabalari to'g'risidagi ma'lumotlarni o'z ichiga olgan kortejlar munosabatda qoldi.


Birlamchi kalitning o'ziga xosligi va ortiqcha emasligi talablaridan kelib chiqadigan munosabatlarda asosiy kalit {StudID} ekanligi kelib chiqadi.

A va B munosabatlarning umumiy atributlari bo'lmasin va u holda θ operatori tanlash kabi aniqlanadi.

Join-qo'shilish ikki munosabatning dekart ko’paytmasini topishga va natijada θ-tanlashga tengdir.

Ushbu amalni yozishni ikkita usuli mavjud:

A [X θ Y] B

(A TIMES B) WHERE X θ Y


Quyidagi misolni ko’rib chiqaylik:
A munosabati qurilmalar narxi to'g'risida ma'lumotni o'z ichiga olsin, B munosabati esa jihozlar narxi to'g'risida ma’lumotlarni saqlaydi. Qurilmalarning narxlari ichida jihozlarning narxlaridan qimmatroq bo’lgan qurilmalar ro’yxatini aniqlash lozim. Buning uchun “QurilmaNarxi” > “JihozNarxi” sharti asosida ulash amalini bajaramiz.
A munosabat


Qurilma

QurilmaNarxi

Qurilma1

100

Qurilma2

200

B munosabat




Jihoz

JihozNarxi

Qurilma1

50

Qurilma2

150

A [QurilmaNarxi JihozNarxi] B



Qurilma

QurilmaNarxi

Jihoz

JihozNarxi

Qurilma1

100

Qurilma1

50

Qurilma2

200

Qurilma1

50

Qurilma2

200

Qurilma2

150

Bo’lish. A va B munosabatlari mos ravishda {X, Y} va {Y} atributlariga ega bo'lsin. Ikki munosabatlarning bir xil nomlangan atributlari bir xil domenlarda aniqlanadi.

Bo’lish – berilgan binar va unar ikkita jadval uchun unar jadvalning barcha qiymatlari bilan moslashgan binar jadvaldagi bitta atributning qiymatlaridan iborat jadval.

Ushbu amal quyidagicha yoziladi:

A / B

A DIVIDED B


Quyida keltirilgan A munosabatida qaysi talaba qaysi fanni topshirganligi to'g'risida ma'lumotlar mavjud. B munosabati fanlarning ro'yxatini o'z ichiga oladi. B jadvalida keltirilgan barcha fanlardan o'tgan talabalarning ID raqamlarini olishingiz kerak.

Muammo A ni B ga bo'lish yo'li bilan hal qilinadi.


A munosabat

StudID

Fan

123

Fizika

123

Matematika

124

Matematika

127

Fizika

B munosabat



Fan

Fizika

Matematika

Bo’lish amalini qo’llash natijasida hosil bo’lgan munosabat



A/B

StudID

123




Yüklə 0,94 Mb.

Dostları ilə paylaş:
1   ...   53   54   55   56   57   58   59   60   ...   153




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin