functii sql uzuale

Post on 01-Jan-2016

119 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

Functii SQL uzuale

TRANSCRIPT

Functii SQL uzuale

Functia CONVERT coverteste rezultatul unei expresii intr-un anumit timp de date

Sintaxa:

CONVERT (tip_date_rezultat [(lungime)], expresie [, stil_coversie])

tip_date_rezultat – tipul de date in care se converteste expresie

lungime – lungimea tipului de date, doar pentru tipurile de date care suporta

expresie – orice expresie admisibila SQL, al carei rezultat se va converti in tip_date_rezultat

stil_conversie – cod folosit atunci cand se doreste utilizarea unor modele de conversie SQL;

Cod Format data/ora rezultat

101 mm/dd/yyyy

103 dd/mm/yyyy

108 hh:mi:sec

113 dd mon yyyy hh:mi:ss:mmm

Cateva coduri uzuale pentru stil_conversie pentru conversia in/din data/ora:

Functia CONVERT (exemple)

Nota: In acest caz codul 103 indica in ce

mod este specificata data in sirul de

caractere (dd/mm/yyyy) pentru a fi

corect convertita in formatul datei

serverului !

Daca se doreste afisarea in formatul

dd/mm/yyyy, o data calendaristica

trebuie convertita in sir de caractere, cu

cod 103, asa cum este in primul

exemplu, altfel se afiseaza in formatul

serverului.

Functia CONVERT (exemple)

Functia CONVERT (exemple – formate diferite pentru data aparitiei unei carti)

Functia CONVERT (exemple – formate diferite pentru pretul de vanzare)

Functia GETDATE()

returneaza data si ora serverului

Exemplu: data si ora serverului

Exemplu: data serverului

Exemplu: ora serverului

Functia NEWID() returneaza o valoare de tip UNIQUEIDENTIFIER

Functiile DAY, MONTH, YEAR

DAY (expresie)

MONTH(expresie)

YEAR(expresie)

Sintaxa:

Functia DATEPART

DATEPART (informatie_calendaristica, expresie_data/ora)

Extrage dintr-o data calendaristica/ora o anumita informatie calendaristica,

identificata printr-un cod

Sintaxa:

Cod informatie_calendaristica (cateva valori uzuale)

Rezultat

year An

month Luna

day Zi

dayofyear Numar zi din an

quarter Trimestru

week Numar saptamana din an

hour Ora

minute Minutele

second Secundele

Functia DATEPART (exemple)

Functia DATEPART (exemple)

Functia DATEDIFF

DATEDIFF (informatie_calendaristica, data/ora start, data/ora final)

Calculeaza diferenta dintre doua date calendaristice (data/ora final si data/ora start). Rezultatul

este furnizat intr-un anumit tip de informatie calendaristica, identificata printr-un cod

Sintaxa:

Functia DATEDIFF (exemple – timp trecut de la emiterea facturilor, exprimări diverse)

Functia DATEADD

DATEADD (informatie_calendaristica, n, data/ora start)

Calculeaza o data calendaristica, pornind de la o anumita data (data/ora final ) la care

se adauga un n (in format informatie calendaristica)

Sintaxa:

Functia DATEADD (exemple – calculul unor date viitoare în raport cu DataFactura)

Functiile LTRIM, RTRIM LTRIM(expresie) – elimina spatiile nesemnificative de la

stanga unei expresii de tip sir de caractere

RTRIM(expresie) – elimina spatiile nesemnificative de la

dreapta unei expresii de tip sir de caractere

Functiile LEN, LOWER, UPPER LEN(expresie) – returneaza numarul de caractere dintr-o expresie LOWER(expresie) – returneaza sirul de caractere din expresie scris cu litere mici UPPER (expresie) – returneaza sirul de caractere din expresie scris cu litere mari

Functiile LEFT, RIGHT, SUBSTRING LEFT(expresie, n) – returneaza n caractere de la stanga unei expresii sir de caractere RIGHT(expresie, n) – returneaza n caractere de la dreapta unei expresii sir de caractere SUBSTRING (expresie, start, n) – returneaza n caractere dintr-o expresie sir de caractere, incepand de la pozitia start

Functia CASE

CASE expresieA WHEN expresieB1 THEN expresie_Rezultat [WHEN expresieB2 THEN expresie_Rezultat] … [ELSE expresie_Rezultat_F] END

Sintaxa varianta 1:

CASE WHEN expresie_logica1 THEN expresie_Rezultat [WHEN expresie_logica2] THEN expresie_Rezultat … [ELSE expresie_Rezultat_F] END

Sintaxa varianta 2:

Functia CASE (exemplu varianta 1 – acordarea unui discount în funcție de luna de facturare)

Functia CASE (exemplu varianta 2 – acordarea unui discount în funcție de valoarea vândută dintr-o carte)

CASE WHEN CantitateVanduta * PretVanzare < 50 THEN 0.1 *

CantitateVanduta * PretVanzare WHEN CantitateVanduta *

PretVanzare < 100 THEN 0.15 * CantitateVanduta * PretVanzare

WHEN CantitateVanduta * PretVanzare < 1000 THEN 0.2 *

CantitateVanduta * PretVanzare ELSE 0.05 * CantitateVanduta *

PretVanzare END

top related