IBM DB2 duomenų bazių valdymo programinė įranga naudoja struktūrinę užklausų kalbą arba SQL duomenų bazių struktūroms kurti ir valdyti bei jose esančiai informacijai atnaujinti. SQL yra pramonės standarto programavimo kalba, apimanti matematines funkcijas, skirtas išsamiai duomenų bazės duomenų analizei atlikti. Naudodami SQL, galite lengvai apskaičiuoti kiekvieno duomenų bazės lentelės įrašo, įrašų grupių ir lentelių sumų procentus.
SELECT pareiškimas
DB2 SQL naudoja sakinį SELECT, kad kurtų ataskaitas iš duomenų bazės informacijos. Pagrindinė sakinio sintaksė yra žodis „SELECT“, po kurio pateikiamas laukų sąrašas, lentelių pavadinimai ir neprivalomos sąlygos, pvz., WHERE ir ORDER BY, norint patikrinti ir rūšiuoti duomenis. Laukai gali būti gaunami tiesiai iš lentelės arba gali būti apskaičiuotos vertės, pagrįstos lentelės laukais. Pavyzdžiui, galite išvardyti užsakymų lentelės turinį, įskaitant produkto kodą, aprašą, kainą ir kiekį, ir galite padauginti kainą iš kiekio, kad gautumėte bendrą sumą.
Paprastas padalijimas
Paprasčiausia procentų forma DB2 SELECT sakinyje padaugina vieną lauką iš 100, tada padalija iš bendros, kad gautų procentą. Pavyzdžiui, ši SQL nurodo kliento vardą, užsakymą, viso elemento procentą ir viso užsakymo procentą:
SELECT pavadinimas, užsakymo numeris, elemento_suma, elemento_suma * 100 / užsakymo_suma AS procentas nuo užsakymo lentelės;
Jei skaičiuojate procentus pagal sveikųjų skaičių laukus, padauginę pirmąjį elementą iš 100, užtikrinsite, kad paskesnis padalijimas grąžins reikšmingą procentą. Jei vietoj to padalysite sveiką skaičių iš didesnio skaičiaus ir padauginsite rezultatą iš 100, SQL grąžins nulį.
Dešimtainė funkcija
DB2 SQL versija turi matematinę funkciją, pavadintą DECIMAL. Naudojant ją su procentų funkcija, DECIMAL leidžia valdyti rezultato dešimtųjų skaičių. Šis SQL SELECT sakinys iliustruoja DECIMAL naudojimą skaičiuojant procentus:
SELECT pavadinimas, užsakymo numeris, DECIMAL (prekės_suma, elemento_suma * 100,0 / užsakymo_suma, 5,2) AS procentinė dalis, užsakymo_suma FROM užsakymo_lentelė;
Funkcija DECIMAL turi tris argumentus: skaičių arba apskaičiuotą vertę, skaitmenų skaičių tikslumui ir skaitmenų skaičių po kablelio. Čia tikslumas yra penki, o skaitmenų po dešimtainio skaičiaus skaičius yra du. Šis SELECT sakinys sukuria procentą kaip skaičių, turintį penkis skaitmenis ir du skaičius po kablelio, pvz., 56,05 arba 199,10.
Vartotojo nustatytos funkcijos
Apsvarstykite galimybę naudoti UDF arba vartotojo nustatytą funkciją atliekant dažnai naudojamus, sudėtingus skaičiavimus, kurių rezultatas procentais. DB2 saugo UDF kaip objektą, todėl jis tampa duomenų bazės dalimi kartu su laukais, lentelėmis ir kitais objektais. CREATE FUNCTION sakinys, po kurio seka kiti SQL sakiniai, duomenų bazėje rašo funkcijos įrašą. Užuot pakartoję sudėtingus skaičiavimus SELECT sakiniuose, galite kreiptis į funkciją, kad jūsų programavimas būtų paprastesnis ir patikimesnis.