|
Sql tilining vazifasi sql tilining tarixi sql operatorlarni yozish qoidalari
|
bet | 7/9 | Sana | 28.01.2024 | Hajmi | 27,05 Kb. | | #147685 |
Bog'liq 9-MavzuSo‘rovlar ifodasi
So‘rov ifodasi bu so‘rov tasnifi asosida sintaktik qoidalarga ko‘ra tuzilgan ifodadir. Bu ifodada faqat UNION, INTERSECT, EXCEPT (jadvallarni birlashtirishi, kesmasi va ayirmasi) yoki UNION ALL amali, bor.
Bu amallarning jadval operandlariga ustunlar soni teng bo‘lishligi va mos ustunlar turi bir xil bo‘lishi sharti qo‘yiladi. So‘rov ifodasi chapdan o‘nga qarab hisoblanadi va qavslar hisobga olinadi. UNION amali bajarish natijasida birlashtirilgan jadval hosil bo‘ladi va unda bir xil satrlar olib tashlanadi.
UNION ALL amal natijasida, hosil bo‘lgan jadvalda satr-nusxalar saqlanib qoladi. Xuddi shunday INTERSECT amali jadvallar kesmasini hosil qiladi va EXCEPT jadvallar ayirmasini hosil qiladi, bu amallar relatsion algebra amalini to‘g‘ridan-to‘g‘ri bajaradi.
Order by bo‘lim
Order by bo‘limi natijaviy jadvalni kerakli tartibda ko‘rsatish uchun ishlatiladi, uning sintaksisi quyidagicha:
<order by bo‘limi> ::= ORDER BY < tartib tasnifi > [, ...]
<tartib tasnifi> ::= {<tartib raqami> | <ustun tasnifi>} [ASC |
DESC]
Bu sintaktik qoidalardan ko‘rinib turibdiki, ORDER BY ro‘yxatida so‘rov ifodani natijaviy ustunlari beriladi va har bir ustun uchun tartiblash qoidasi beriladi (ASC – o‘sish (kelishuv bo‘yicha), DESC – kamayish bo‘yicha). Ustunlar o‘z nomi bilan berish mumkin agarda:
1) so‘rov ifodada UNION, INTERSECT, EXCEPT amallar uchramasa,
2) ustunda skalyar ifoda ishlatilmasa, aks hollarda ustunni tartib raqami beriladi.
Bir satrni tanlash operatori
Bir satrni tanlash operatori SQL/92 tilining alohida operatoridir. Bu operator so‘rov natijasini to‘g‘ridan-to‘g‘ri tatbiqiy programmaga kursorsiz uzatish imkoniyatini beradi. Shu sababli bu operatordan foydalanish natijasidagi jadvalda satrlar soni bittadan ortmasligi kerak. Operatorda INTO bo‘limida tatbiqiy programma o‘zgaruvchilari ro‘yxati beriladi.
So‘rov qismi
Jadval ifodaga ega bo‘lgan konstruksiya bu so‘rov qismidir, ya’ni SQL operatorning tanlash shartiga (predikatga) kiradigan so‘rovdir. SQL/92da so‘rov qismi natijasidagi jadval faqat bitta ustunga ega bo‘lish kerak. Shu sababli natija tasnifi, qiymatni hisoblovchi arifmetik ifodadan iborat bo‘lishi shart. Shuni aytib o‘tish kerakki, so‘rov qismlar boshqa so‘rovga kirganligi uchun, unda o‘zgarmaslar sifatida tashqi so‘rovni ustunlar qiymati ishlatilishi mumkin. Bu to‘g‘risida keyinroq batafsil to‘xtab o‘tamiz.
Jadval ifodasi
SQL/92 namunasida jadval ifodasi from, where, group by va having bo‘limlari ketma-ket from bo‘limida ko‘rsatilgan jadvallar ro‘yxatiga qo‘llash natijasida hosil bo‘ladi.
|
| |