Hozirgachabiz jadvaldanma’lumotlamitanlabolishdafaqatbittashartdanfoydalandik.SQLtilibittaiboradaikkiyokiundanortiqshartlarningqo'llanishigaimkonberadi. Bu holatda shartlar bir-biridan AND yoki OR biriktiruvchi kredit-lar yordamida ajratiladi.Quyida biz shartlarni almashtirishni qo'llashimkoniyatiniko‘rsatadiganikkitamisolkeltiramiz. 1-misol.Factory jadvalidanworkerbo‘limigategishlivastaji10yildanortiqbo‘lganxodimlamingro'yxatinitanlash. SelectName,Los,Deptfromfactory whereDept—worker’ andLos>10;Natijadaekrandaquyidagilarhosilbo'ladi: Name Los Dept ErkinJ. 17 worker PauLT. 1 2 worker 2-misol.Factory jadvalidan01.01.1960dankeyintug'ilgan,oylikmaoshi 2050 dan kam yoki 2450 dan ortiq, telefon raqami bor xodimlamingro'yxati,tug'ilgansanasi,oylikmaoshi va telefonraqamlarinitanlash. SelectName,Dob,Salary,Telnofromfactory wherenotbetween2050and2450andDob>01.01.1960; Arifmetik operatsiyalar. SQLfaqattanlashniemas,balkima’lumotlarbilanarifmetikamallamibajarishnihamta’minlaydi. Masalan: SelectName,Salary*1.2fromfactory whereDept=’service’; Natijadaekrandaquyidagilarhosilbo'ladi: Name Salary*1.2 BiancaA. 2340 JaneS. 2280 Agar oxirgiifodadashart bo'lmasa,EHMbarcha xodimlaming oylikmaoshini20%gaoshiradi.Shuniaytibo'tishkerakki,factoryjadvalining o'zidaBianca A. va Jane S.ning oylikmaoshi o'zgarishsizqoladi. Jadval ma’lumotlarini o'zgartirish uchun maxsus buyruqlar kerak,ularhaqidakeyinroqsuhbatlashamiz.Ma’lumotlarbazasibilanishlaganda shu kundagi sana va vaqtni bilish kerak. Shu maqsadda SQLdaquyidagioperatorlarnazardatutilgan.
SYSTIME—soat, minut,sekundformatidashukungivaqtnibelgilaydi. SYSDATE—kun,oy,yilformatidashukungisananibelgilaydi.Misol: SelectName,Sysdate,systimefromfactory whereSalary=2700orSalary=3000Natijadaquyidagigaegabo'lamiz. Name Sysdate SystimeRustamB. 14.01.1997. 14.02.27. Shuningdek,sysdate va systimeoperatorlari bilan arifmetik operasi-yalarnibajarishmumkin. Masalan: SelectName,Sysdate+31fromfactory whereNamelike'Rustam%'; Berilganbuyruqasosida,shukungisanagaEHM31kunniqo‘shibqo‘yadi. Natijadaquyidagilarhosilbo'ladi: Name Sysdate+31 RustamB. 14.02.97. SQLsanavavaqtbilanbo'lganarifmetikoperatsiyalardagiliterallarkabi,sana va vaqtning har xilkonstantalariniqo'llashgaimkon beradi.ShumaqsaddaSQL ga yil(lar),oy(lar),kun(lar),soat(lar),minut(-lar),sekund(lar),mikrosekund(lar)—YEAR(S),month(S),Day(S),HOUR(S),MINUTE(S),SECOND(S),MICROSECUND(S)larki ritiladi. Quyidagimisolmazkurkonstantalamiqo'llashusuliniko'rsatadi. SelectName,Dob,Dob+5yearsfromfactory whereNamelike’Dob%'; Displeyekranidaquyidagilarhosilbo'ladi: Name Dob Dob+5yearsDonT. 11.04.1966 11.04.1971 DonovanA.14.05.196714.05.1972 Funksiyalarvazifalari.Funksiyafaoliyatiko'pjihatdanoperatorfaoliyatiga o'xshaydi. Boshqacha aytganda, funksiyalar foydalanuvchigama’lumotlarbilanmanipulyatsiyaqilishningyanabirusuliniberadi. Har bir funksiya bir yoki bir nechta argument (hujjat, asos)ga egabo'ladi.Funksiyaargumentiyosonli,yokisatrlimiqdordabo'lishimumkin.
Hisoblash tugagandan so'ng funksiya yagona sonli qiymatni yoki satrliiboraniqabul qiladi.Funksiyalar boshqadasturlashtirishtillari bilano'xshashbo'lgani uchunulaming qurilish(hosil bo'lish)prinsiplarigato'xtalmaymiz.Quyidako'proqishlatiladiganORACLEfunksiyalarikeltiriladi: a)sonlifunksiyalar.Bufunksiyalarningargumentisonlimiqdordir. Chiqishda bitta son bergan holda, bu funksiyalar ma’lumotlaming butunustunibilanisholibboradi.Funksiyaningumumiyko'rinishiquyidagicha: funksiyanomi([distinct/all]ustunnomi)'ibora’fromjadvalnomi. Agar argument oldidan «distinct» tursa, bu barcha ustundagi hisob-kitoblarargumentlamingmosbo'lmaganqiymatiustidabajarilishinibildiradi. Agar argument oldidan «all» qo'yilgan yoki hech narsa ko'rsa-tilmagan bo'lsa, bunday holda hisob-kitob barcha qiymatlar ustida olibboriladi.Apostrofdagiiborahisob(kitob)natijasiustidanbosiladi. 1 AVR[distinct/all],n);nnomibilanustunningo'rtachaarifmetikqiymatinihisoblaydi. Misol: Selectavr(distinctSalary)’avrsalary'fromfactory Natijadaquyidagilarbosibchiqariladi: avrsalary2237.50 Berilganmisoldakompyutermosqiymatnichiqaribtashlaganholda,Salaryustuniningo'rtachaqiymatinihisoblaydi. 2.MIN[distinct/all],n); 3.MAX[distinct/all],n); 2-va3-funksiyalarnustuniningminimalvamaksimalqiymatinihisoblaydi. Misol: Selectmin(Los)'minlos'fromfactory; Natijadaquyidagigaegabo'lamiz.minLos 4.SUM ([distinct/all],n);nustuniningelementlariyig'indisinihisoblaydi. Misol: Selectsum(Salary) ’sumsalary1 fromfactory. NatijadaSalaryustuniningbarchaelementlariyig'indisihisoblanadi.
5.COUNT([distinct/allJ,n);bufunksiyanustunidagielementlarmiqdorinihisoblaydi. Shuni belgilashimizkerakki,(2—5)funksiyalar ustunda berilmaganelementlarnie'tibordanchetdaqoldiradi. Countfunksiyasi«yulduzchani»argumentsifatidaqo'llashimumkin. Count(*) Buhar bir ustunningbarchaelementlarihisoblanishinibildiradi.Misol: Selectcount(name),count(telno)fromfactory count(name)count(telno)15 13 Natijalarningharxilbo'lishigasababkompyuter Telnoustunidagiberilmaganqiymatlarnihisobgaolmaganidir. E'tiborberaylik,(1—5)funksiyalarini«where»dankeyinqo'llashmumkin(shartda).