O expresie SQL este o expresie formata din operanzi, operatori si paranteze.
Operatorii SQL pot fi reprezentati prin unul sau mai multe caractere speciale (+, <,.) sau prin cuvinte cheie (AND, OR, NOT, UNION).
Operatorii se impart in sase grupe distincte: aritmetici, de comparare, caracter, logici, pentru multimi si alti operatori.
Astfel, avem urmatorii operatori:
aritmetici: +, -, <, <=, <> (!=);
logici: AND, OR, NOT.
Operatorii logici se aplica asupra unor valori ternare (o valoare ce reprezinta un operand ce poate avea valoare TRUE (1), FALSE (0) si NULL (lipsa de informatie)). Nu exista tipul de date boolean asupra caruia sa se aplice operatorii logici dar operatorii de comparatie returneaza o valoare booleana.
Operatorii de comparare evalueaza orice expresie la o valoare logica (bool): TRUE, FALSE. Tipul boolean exista insa incepand din SQL3. Operatorii de comparare pot fi:
BETWEEN val_min val_max;
LIKE model_sir > sir;
IS NULL sau IS NOT NULL;
IN lista_valori.
Operatorii aritmetici sunt: plus (+), minus (-), impartire (/), inmultire (*) si modulo (%). Primii patru sunt descrisi chiar prin numele lor.
Daca se plaseaza cativa operatori aritmetici intr-o expresie fara paranteze, ei sunt tratati in ordinea urmatoare: inmultire, impartire, modulo, adunare, apoi scadere.
Plus (+) Se introduce comanda:
SQL>SELECT Mat, Pret_u,
Pret_u + 10000
FROM MATERIALE;
Aceasta comanda adauga 10000 de unitati monetare la fiecare pret unitar si genereaza urmatorul rezultat:
Deoarece capul de tabel este neconcludent, acesta se modifica prin introducerea comenzii:
SQL> SELECT Mat, Pret_u, (Pret_u + 10000) Pret_modif
FROM MATERIALE;
Se obtine:
Se pot crea noi coloane care se pot redenumi in timpul executiei. Redenumirea coloanelor se face folosind sintaxa: <nume_coloana> alias.
Minus (-), Inmultire (*), Impartire (/) se folosesc similar cu operatorul Plus(+).
Modulo (%) este un operator care returneaza restul intreg al unei impartiri. De exemplu:
Operatorul modulo nu accepta tipuri de date care contin zecimale, ca, de exemplu, tipul real sau number.
Operatorii de comparatie
Operatorii de comparatie sunt: Egal (=), Mai mare decat (>), Mai mare sau egal (>=), Mai mic decat (<), Mai mic sau egal (<=) si Inegalitate (<> sau !=).
Dupa cum arata si numele lor, operatorii de comparare compara expresiile si returneaza una din urmatoarele trei valori: TRUE (adevarat), FALSE (fals), sau UNKNOWN (necunoscut).
Pentru a intelege notiunea UNKNOWN (necunoscut), trebuie s-o asociem conceptului NULL (nul). In termenii folositi pentru baze de date, NULL semnifica absenta datelor dintr-un camp. Nu inseamna ca o coloana contine o valoare zero sau un spatiu. Un zero sau un spatiu sunt valori. NULL inseamna ca in campul respectiv nu se gaseste nimic.
Egal (=)
In clauza WHERE, semnul = este cel mai utilizat operator de comparare, care, folosit singur, devine un mod facil de selectare a unei valori din mai multe existente.
Mai mare decat (>) si Mai mare sau egal (>=).
Operatorul mai mare decat (>) actioneaza in felul urmator:
Comanda:SELECT Nr_intreg, Cod, Mat, UM, Cant, Pret_u
FROM MATERIALE (8)
WHERE Cant >1000 AND Mat='Cherestea';
In mod similar actioneaza si ceilalti operatori de comparatie: Mai mare sau egal (>=), Mai mic decat (<), Mai mic sau egal (<=) si Inegalitate (<> sau !=).
Operatorii caracter
Exista mai multi operatori caracter, dintre care se vor prezenta: LIKE, UNDERSCORE, Concatenarea.
LIKE presupune a gasi intr-o baza de date acele inregistrari care nu corespund in totalitate unui model. Forma sa este urmatoarea:
SQL> SELECT *
FROM nume baza de date
WHERE nume-camp LIKE expresie;
De multe ori, in expresia care urmeaza dupa LIKE apare semnul de modulo (%), care are rolul de caracter de inlocuire.
Exemplu:
SQL> SELECT *
FROM MATERIALE
WHERE Mat LIKE 'C%';
Executia acestei comenzi are ca efect aparitia acelor inregistrari in care Mat incepe cu litera C. De remarcat ca LIKE diferentiaza literele mari de literele mici.
UNDERSCORE. este un caracter de inlocuire doar pentru un singur caracter. Pentru tabelul MATERIALE creat anterior se va exemplifica acest operator:
SQL> SELECT *
FROM MATERIALE
WHERE Mat LIKE 'Co_';
Intr-o instructiune SELECT pot aparea mai multe semne underscore. De asemenea, se pot regasi una sau mai multe inregistrari dupa un caracter situat oriunde in sirul de caractere.
Concatenarea presupune reunirea a doua sau mai multe siruri de caractere. Pentru concatenare se foloseste simbolul // sau +.
SQL>SELECT Cod // Mat CodDenumire_material
FROM MATERIALE;
Operatorii logici
Operatorii logici sunt urmatorii: AND, OR, NOT. Operatorul AND utilizat intre doua expresii presupune ca ambele sa fie adevarate pentru ca acestea sa returneze valoarea de adevar TRUE. Daca oricare dintre expresii este falsa, AND va returna valoarea FALSE. Acest operator a fost utilizat in exemplul.
Operatorul OR este utilizat pentru insumarea unei serii de conditii. Cand cel putin una dintre conditii este adevarata, OR returneaza valoarea TRUE.
Operatorul NOT - in cazul aplicarii unei conditii care are valoarea TRUE, operatorul NOT o va schimba in FALSE. In situatia in care conditia care urmeaza operatorului NOT are valoarea FALSE, ea va deveni TRUE.
Operatorii pentru multimi
Operatorii UNION si UNION ALL
UNION returneaza rezultatele a doua interogari (selectii), mai putin liniile duplicate. UNION ALL returneaza rezultatele tuturor interogarilor (selectiilor), mai putin liniile duplicate.
Operatorul INTERSECT (intersectie) returneaza numai liniile comune gasite in ambele interogari (selectii).
Operatorul MINUS (cea de DIFERENTA) returneaza liniile din prima interogare (selectie) care nu fac parte din a doua interogare (selectie).
6. Alti operatori, IN si BETWEEN
Cei doi operatori IN (in) si BETWEEN asigura folosirea unei forme scurte pentru functii diverse.
SQL> SELECT *
FROM MATERIALE
WHERE Mat IN ('Cherestea', 'Tabla');
SQL> SELECT *
FROM MATERIALE
WHERE Pret_u BETWEEN 140000 AND 170000;
Politica de confidentialitate |
.com | Copyright ©
2024 - Toate drepturile rezervate. Toate documentele au caracter informativ cu scop educational. |
Personaje din literatura |
Baltagul – caracterizarea personajelor |
Caracterizare Alexandru Lapusneanul |
Caracterizarea lui Gavilescu |
Caracterizarea personajelor negative din basmul |
Tehnica si mecanica |
Cuplaje - definitii. notatii. exemple. repere istorice. |
Actionare macara |
Reprezentarea si cotarea filetelor |
Geografie |
Turismul pe terra |
Vulcanii Și mediul |
Padurile pe terra si industrializarea lemnului |
Termeni si conditii |
Contact |
Creeaza si tu |