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
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>
Do'stlaringiz bilan baham: |