Funcții SQL - single row

Previzualizare laborator:

Extras din laborator:

LABORATOR 2 - SQL

FUNCŢII SQL (single-row)

Funcţiile SQL sunt predefinite în sistemul Oracle şi pot fi utilizate în instrucţiuni SQL. Ele nu trebuie confundate cu funcţiile definite de utilizator, scrise în PL/SQL.

-Dacă o funcţie SQL este apelată cu un argument având un alt tip de date decât cel aşteptat, sistemul converteşte implicit argumentul înainte să evalueze funcţia.

-Dacă o funcţie SQL este apelată cu un argument null, atunci aceasta returnează valoarea null. Singurele funcţii care nu urmează această regulă sunt CONCAT, NVL şi REPLACE.

Principalele funcţii SQL pot fi clasificate în următoarele categorii:

-Funcţii single-row

-Funcţii multiple-row (funcţii agregat)

Funcţiile single-row returnează câte o linie rezultat pentru fiecare linie a tabelului sau vizualizării interogate. Aceste funcţii pot apărea în listele SELECT, clauzele WHERE, START WITH, CONNECT BY şi HAVING.

1. Analizaţi următoarele funcţii pentru prelucrarea şirurilor de caractere:

Funcţie Semnificaţie Exemplu

LOWER (expresie) Converteşte un şir de caractere la minuscule. LOWER ('AbCdE') = 'abcde'

UPPER (expresie) Converteşte un şir de caractere la majuscule. UPPER ('AbCdE') = 'ABCDE'

INITCAP (expresie) Converteşte un şir de caractere la un şir care începe cu majusculă şi continuă cu minuscule. INITCAP ('AbCdE') = 'Abcde'

CONCAT (expr1, expr2) Concatenează doua expresii de tip caracter. Echivalent cu operatorul de concatenare '||'. CONCAT ('Ab', 'CdE') = 'AbCdE'

SUBSTR (expresie, m[, n]) Extrage din expresia de tip şir de caractere, n caractere începând cu poziţia m. Dacă lipseşte argumentul n, atunci extrage toate caracterele până la sfârşitul şirului. Dacă m este negativ numărătoarea poziţiilor începe de la sfârşitul şirului de caractere spre început. SUBSTR ('AbCdE', 2, 2) = 'bC'

SUBSTR ('AbCdE', 2) = 'bCdE'

SUBSTR ('AbCdE', -3,2) = 'Cd'

SUBSTR ('AbCdE', -3) = 'CdE'

LENGTH (expresie) Returnează numărul de caractere al expresiei. LENGTH ('AbCdE') = 5

INSTR (sir, subsir[, pozitie][, n]) Returnează poziţia la care se găseşte a n-a ocurentă a expresiei 'subsir' în cadrul expresiei 'sir', căutarea începând de la poziţia ‘pozitie’. Valorile implicite pentru ‘pozitie’ şi n sunt 1. INSTR ('abcde abcde', 'ab', 1, 1) = 1

INSTR ('abcde abcde', 'ab', 1, 2) = 7

INSTR ('abcde abcde', 'ab', 5, 2) = 0

INSTR ('abcde abcde', 'ab', 5) = 7

INSTR ('abcde abcde', 'ab') = 1

LPAD (expresie, n[, expr1]) sau RPAD (expresie, n[, expr1]) Completează expresia caracter dată ca parametru (expresie), la stânga (LPAD), respectiv la dreapta (RPAD) cu caracterele specificate în expresia expr1, până la lungimea specificată de parametrul n. Implicit, dacă lipseşte, expr1 este ' ' un spaţiu. RPAD (LOWER('AbCdE'), 10, 'X')

= 'abcdeXXXXX'

LPAD (LOWER('AbCdE'),10)

= ' abcde'

LTRIM (expresie[, expr1]) sau RTRIM (expresie[, expr1]) Reversul funcţiilor LPAD, RPAD. Trunchează expresia caracter la stânga sau la dreapta prin eliminarea succesivă a caracterelor din expresia expr1. Implicit, daca lipseşte, expr1 este ' ' un spaţiu. RTRIM ('abcdeXXXX', 'X')

= 'abcde'

LTRIM (' abcde') = 'abcde'

TRIM (LEADING | TRAILING | BOTH caractere_trim FROM expresie) Permite eliminarea caracterelor specificate (caractere_trim) de la începutul (leading) , sfârşitul (trailing) sau din ambele părţi, dintr-o expresie caracter data. TRIM (LEADING 'X' FROM 'XXXabcdeXXX') = 'abcdeXXX'

TRIM (TRAILING 'X' FROM 'XXXabcdeXXX') = 'XXXabcde'

TRIM ( BOTH 'X' FROM 'XXXabcdeXXX') = 'abcde'

TRIM (' abcde ') = 'abcde'

REPLACE (expr, expr1, expr2) Înlocuieşte în prima expresie toate ocurentele şirului expr1 cu şirul expr2. REPLACE ('%1%11','%','2') = '21211'

REPLACE ('%1%11','%1','23') = '23231'

REPLACE ('%1%11','%') = '111'

TRANSLATE(expr, expr1, expr2) Fiecare caracter din şirul de caractere expr care apare şi în expr1 este transformat în caracterul corespunzător (aflat pe aceeaşi poziţie ca şi în expr1) din şirul de caractere expr2. TRANSLATE('%1%11','%','2') = '21211'

TRANSLATE('%1%111','%1','23')

= ' 232333'

ASCII (expresie) Returnează codul ASCII al primului caracter din şirul 'expresie'. ASCII ('curs') = ASCII ('c') = 99

CHR(expresie) Întoarce caracterul corespunzător codului ASCII specificat. CHR(99)= 'c'

2. Să se listeze numele şi data angajării salariatului având codul 200. Să se eticheteze coloanele conform cu semnificaţiile acestora (Nume, Data angajării), fără ca aliasurile să fie trunchiate la dimensiunea coloanei şi respectându-se forma de scriere a acestora (aliasurile încep cu majusculă).

Obs.: Numai aliasul specificat între ghilimele păstrează formatul exact (majuscule, respectiv minuscule), celelalte sunt transformate implicit în majuscule.

Cuvântul cheie care specifică un alias este AS. Acesta este facultativ.

Observații:

UNIVERSITATEA BABEŞ-BOLYAI.CLUJ-NAPOCA

lab 2

Download gratuit

Documentul este oferit gratuit,
trebuie doar să te autentifici in contul tău.

Structură de fișiere:
  • Functii SQL - Single Row.doc
Alte informații:
Tipuri fișiere:
doc
Nota:
8/10 (1 voturi)
Nr fișiere:
1 fisier
Pagini (total):
8 pagini
Imagini extrase:
8 imagini
Nr cuvinte:
2 679 cuvinte
Nr caractere:
15 198 caractere
Marime:
28.67KB (arhivat)
Publicat de:
NNT 1 P.
Nivel studiu:
Facultate
Tip document:
Laborator
Domeniu:
Birotică
Predat:
la facultate
Materie:
Birotică
Profesorului:
Felicia Ionescu
Sus!