22-Mavzu: Murakkab so‘rov yaratish Reja: 1. Murakkab so'rovlar 2. Hisoblangan maydonlar bilan so'rovlar 3. Jadvallarning ichki birikmasi
Murakkab so'rovlar
Murakkab so'rovlar bilan siz quyidagilarni qilishingiz mumkin.
• Bir nechta bog'liq jadvallardagi ma'lumotlarni bitta sifatida taqdim eting.
• Foydalanuvchi tomonidan belgilangan shart asosida ma'lumotlarni tanlang.
• Qiymatlari jadvaldagi bir nechta maydonlarga asoslangan maxsus so'rov maydonlarini yarating.
• Ba'zi shartlardan foydalanib, jadvallardan ba'zi yozuvlarni tanlang.
Hisoblangan maydonlar bilan so'rovlar
Maktab o'quvchilari haqidagi ma'lumotlar jadvallarida siz familiyalarni, ismlarni, manzillarni saqlashingiz mumkin, lekin ularning yoshini emas, chunki u har yili o'zgarib turadi. Bunday holda, ularning tug'ilgan sanasini saqlash kifoya. Talabalarning yoshini foydalanuvchi tomonidan yaratilgan so'rov orqali osongina olish mumkin. So'rovni yaratishda siz qo'shimcha so'rov maydonlarini yaratish imkoniyatiga ega bo'lasiz, ularning qiymatlari jadvaldagi boshqa maydonlardagi qiymatlarni hisoblashga asoslanadi. Bunday maydon hisoblangan maydon deb ataladi.
Agar siz bunday maydonni yaratmoqchi bo'lsangiz, " Maydon " qatoriga ushbu qiymatni baholaydigan aniq ifodani kiritishingiz kerak bo'ladi. Bunday iborada siz jadval maydonlariga ba'zi havolalardan foydalanishingiz kerak bo'ladi, ularning nomlari kvadrat qavslar ichiga olinadi. Hisoblangan maydon nomi ifodadan oldin ikki nuqta bilan ajratilgan holda yozilishi kerak.
Endi hisoblangan maydon bilan so'rov yarating.
1. Kerakli Microsoft Access 2007 ma'lumotlar bazasini oching ( Savdo bo'limi ).
2. " Yaratish " yorlig'ida " Boshqa" guruhida " So'rovlar yaratuvchisi " tugmasini bosing . Yangi so'rov yaratiladi va siz ekranda Jadvalni qo'shish oynasini ko'rasiz (5.7-rasmga qarang).
3. Jadvallar yorlig'ini bosing va kerakli jadvalni tanlang (masalan, Mijozlar ). Keyin Qo'shish tugmasini va keyin Yopish tugmasini bosing . Ekranda bo'sh so'rov shakli ko'rsatiladi.
4. Ma'lumotlar deb nomlangan hisoblangan maydonni yaratish uchun so'rov shakli ustunidagi Maydon katakchasini bosing va quyidagilarni kiriting: Ma'lumotlar: [Telefon]+” “+[Manzil].
5. Agar so'rov formasi ustunidagi " Ekranga ko'rsatish" katagiga belgi qo'ysangiz, natijada ushbu so'rov maydoni ko'rsatiladi.
6. Shuningdek , so‘rov formasi ustunidagi Saralash opsiyasini bosish va ochiladigan ro‘yxatdan “Osish bo‘yicha ”ni tanlash orqali tartiblashni o‘rnatishingiz mumkin. O'zgartirilgan so'rov shakli rasmda ko'rsatilganidek bo'ladi. 5.17.
Guruch. 5.17. To'ldirilgan so'rov shakli
7. So'rovni saqlash uchun Tezkor kirish asboblar panelidagi Saqlash tugmasini bosing. Ekranda yangi so'rov nomini kiritish uchun oyna paydo bo'ladi.
8. So'rov nomi maydonida siz yangi so'rov uchun nom kiritishingiz mumkin. Keyin OK tugmasini bosing .
9. Dizayn yorlig'ini bosing va keyin "Ishga tushirish" tugmasini bosing . Shundan so'ng siz o'zgartirilgan so'rov natijasini ko'rishingiz mumkin (5.18-rasm).
Guruch. 5.18. O'zgartirilgan so'rov natijasi
Ikki yoki undan ortiq ma'lumotlar bazasi jadvallarida so'rov yaratishning ikki yo'li mavjud. Ushbu holatning amaliy misoli keyingi bo'limda keltirilgan.
Jadvallarning ichki birikmasi
Ishda siz bir nechta jadvallarga qo'shishingiz kerak bo'ladi. Ulanishlar har xil.
• Ichki qo'shilish - shuningdek, tenglik munosabati bilan ma'lumotlar bazasi jadvallaridagi yozuvlarni bog'lashi mumkin bo'lgan eng keng tarqalgan qo'shilish turlaridan biri sifatida ham tanilgan.
Access 2007 ikkita shart bajarilganda avtomatik ravishda tenglamalarni yaratishi mumkin:
- agar jadvalda bir xil nomli maydonlar, shuningdek, izchil turlar mavjud bo'lsa va bu maydonlardan kamida bittasi kalit bo'lishi kerak;
- bu ulanish foydalanuvchi tomonidan Ma'lumotlar sxemasi oynasida ko'rsatilgan .
• Tashqi qo'shilish - bir jadvaldagi barcha yozuvlarni va boshqa jadvaldagi yozuvlarni birlashtirgan so'rovni yaratish uchun foydalaniladigan birlashma (lekin faqat tegishli maydonlar mos keladigan joylar).
• Aloqaviy birlashma - Ma'lumotlarni har qanday aloqa bilan bog'lashni istasangiz, Theta qo'shilishidan foydalanish kerak. Bundan tashqari, bunday ulanish Dizayner oynasida va Ma'lumotlar sxemalari oynasida ko'rsatilmaydi .
• Rekursiv birlashma ma'lumotlarni bir jadvalda birlashtirish uchun boshqa turdagi birikmadir. Jadvalning nusxasi so'rovga qo'shilganda yaratiladi, shunga o'xshash jadvallarning maydonlari bog'lanadi.
Microsoft Access 2007 ba'zi SQL so'zlaridan foydalanadi:
• INNER JOIN – ichki birikmalar ko'rsatkichlari uchun;
• LEFT JOIN yoki RIGHT JOIN – tashqi birikmalarni belgilash uchun;
• WHERE maydon1=maydon2 – ichki birlashma;
• WHERE maydoni1>maydon2 – munosabat bo'yicha birlash.
Ichki jadval birikmasi bilan so'rov yaratish uchun quyidagi amallarni bajaring.
1. Kerakli Microsoft Access 2007 ma'lumotlar bazasini oching ( Savdo bo'limi ).
2. " Boshqa " guruhidagi " Yaratilishlar " yorlig'i bilan " Query Builder " tugmasini bosing . Yangi so'rov yaratiladi va siz ekranda Jadvalni qo'shish oynasini ko'rasiz (5.7-rasmga qarang).
3. Jadvallar yorlig'iga o'ting va kerakli narsani tanlang (masalan, Mijozlar ), Qo'shish tugmasini bosing . Shundan so'ng, boshqa jadval nomini tanlang (masalan, Buyurtmalar ) va Qo'shish tugmasini bosing . Ushbu protsedura oxirida Yopish tugmasini bosing . Ekranda bo'sh so'rov shakli ko'rsatiladi, uning yuqori qismida jadval tuzilmalari va ularning o'zaro bog'liqligini ko'rasiz (5.19-rasm).
Guruch. 5.19. Bo'sh so'rov shakli, jadval tuzilmalari va ularning aloqasi yuqoridan ko'rinadi
4. Maydon nomini ikki marta bosish orqali ikkita jadval sxemasidan kerakli maydonlarni tanlang (masalan, Ism , Telefon , Manzil , Mahsulot , Miqdor ).
5. Agar so'rov formasi ustunidagi " Display " katagiga belgi qo'ysangiz , ushbu so'rov maydoni ko'rsatiladi.
6. Kerakli maydonning so‘rov formasi ustunidagi Saralash parametrini bosish orqali ham tartiblashni o‘rnatishingiz mumkin . Ochiladigan ro'yxatda kerakli saralash variantini tanlang (5.20-rasm).