SQL soʻrovlarini oʻzingiz uchun SELECT va IN, NO IN, BETWEEN predikatlari bilan yozing va keyin yechimlarni koʻring.
"Teatr" ma'lumotlar bazasi mavjud. Play jadvali o'ynash ma'lumotlarini o'z ichiga oladi. Stol jamoasi - aktyorlarning rollari haqida. Aktyorlar jadvali aktyorlar haqida. Stol direktori - direktorlar haqida. Jadval maydonlari, asosiy va xorijiy kalitlarni quyidagi rasmda ko'rish mumkin (kattalashtirish uchun sichqonchaning chap tugmasini bosing).
12-misol. Bosh rolga hech qachon tasdiqlanmagan aktyorlar ro'yxatini ko'rsating. Jamoa jadvalida asosiy rollar haqidagi ma'lumotlar asosiy jamoa ustunida joylashgan. Agar rol asosiy bo'lsa, unda tegishli qatorda "Y" belgilanadi.
SELECT va ORDER BY - qatorlarni tartiblash (tartib qilish).
Hozirgacha tahlil qilingan SQL SELECT so'rovlari istalgan tartibda bo'lishi mumkin bo'lgan qatorlarni qaytardi. Biroq, ko'pincha satrlarni son tartibi, alifbo va boshqa mezonlar bo'yicha saralash kerak bo'ladi. Bu ORDER BY kalit so'zi yordamida amalga oshiriladi. Bunday so'rovlar quyidagi sintaksisga ega:
15-misol Shtat jadvalidan 84-bo'limda ishlaydigan xodimlarni tanlash va yozuvlarni ishlagan yillar soni bo'yicha o'sish tartibida saralash (tartibga solish) talab qilinsin:
ASC so'zi tartiblash tartibi ortib borayotganligini bildiradi. Bu soʻz ixtiyoriy, chunki oʻsish boʻyicha tartiblash sukut boʻyicha hisoblanadi. So'rovni bajarish natijasi:
16-misol Oldingi misoldagi kabi bir xil ma'lumotlarni tanlash talab qilinsin, lekin yozuvlarni kamayish tartibida ishlagan yillar soni bo'yicha tartiblang (tartibi):
DESC so'zi tartiblash tartibining kamayishini bildiradi. So'rovni bajarish natijasi:
SELECT va DISTINCT - takroriy qatorlarni olib tashlash
Jadval satri qiymatlari uchun yagonalik sharti belgilanmagan bo'lsa, so'rov natijalarida bir xil qatorlar paydo bo'lishi mumkin. Ko'pincha siz faqat noyob satrlarni ko'rsatishni xohlaysiz. Bu SELECT iborasidan keyin DISTINCT ifodasi yordamida amalga oshiriladi.
17-misol. Qaysi bo'limlar mavjudligi va ularning soni 30 dan kam bo'lgan bo'limlar orasida qanday lavozimlar mavjudligini aniqlash talab qilinsin. Buni quyidagi so'rov yordamida amalga oshirish mumkin:
So'rovni bajarish natijasi:
Do'stlaringiz bilan baham: |