Managementul Resurselor Umane

Documente similare
Aggregating Data

Laborator02

Baze de date

Laborator 8: PROIECTAREA BAZELOR DE DATE SUBPROGRAME in PL/SQL (partea II - functii) Un subprogram este un bloc PL/SQL cu nume (spre deosebire de bloc

Laborator5_SQL_an2

PHP (II)

Microsoft Word - Curs_07.doc

Baze de date-Anul 2 (semestrul 2)

proiectarea bazelor de date

RZOLVARE EXERCITIU ZODII declare cursor distributie_zodie is select nume_zodie, count(*) distributie from zodiac z join utilizatori u on to_date(to_ch

PowerPoint Presentation

Baze de date - Anul 2 Laborator 8 Limbajul de definire a datelor (LDD) (partea I) În general, instrucţiunile LDD sunt utilizate pentru definirea struc

Microsoft Word - Curs 11 - PHP.doc

PowerPoint Presentation

Laborator 7: PROIECTAREA BAZELOR DE DATE SUBPROGRAME in PL/SQL (partea I - proceduri) Un subprogram este un bloc PL/SQL cu nume (spre deosebire de blo

PowerPoint Presentation

ADRIAN TRIF BAZE DE DATE APLICAŢII ACCESS UTPRESS Cluj-Napoca, 2019 ISBN

Logică și structuri discrete Limbaje regulate și automate Marius Minea marius/curs/lsd/ 24 noiembrie 2014

PowerPoint Presentation

1. Operatii cu matrici 1 Cerinte: Sa se realizeze functii pentru operatii cu matrici patratice (de dimensiune maxima 10x10). Operatiile cerute sunt: A

Mai multe despre optimizare

Microsoft Word - CarteC.doc

Paradigme de Programare

Microsoft Word - Fisa disciplinei BD_I_IE doc

Subiectul 1

Utilizarea îmbinării corespondenței pentru crearea şi imprimarea scrisorilor şi a altor documente Dacă utilizați îmbinarea corespondenței când doriți

1. Găsiți k numerele cele mai apropiate într-un şir nesortat Dându-se un şir nesortat și două numere x și k, găsiți k cele mai apropiate valori de x.

Database Management Systems Cap 2. Structured Query Language (1)

Prezentarea calculatorului

Matrici și vectori în VBA În VBA, o matrice este un grup de variabile de același tip. De ce ar trebui să utilizați o matrice? Presupunem că ați vrut s

Microsoft Word - Curs1.docx

Anexa nr. 2 FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior UNIVERSITATEA DE VEST TIMISOARA 1.2 Facultatea FIZICA 1.3 De

Limbaje de Programare Curs 5 – Siruri de caractere

Platforma 5. 1 Introducere in MSSQL Introducere Pe parcursul ultimilor ani, se poate observa o cuplare a limbajelor de programare majore cu tipuri de

Curs 3 Permutari cu repetitie. Combinari. Algoritmi de ordonare si generare

Concepte de bază ale Tehnologiei Informației

Addendum Syllabus 6 Microsoft Access 2016 REF Syllabus 6.0 Cunoașterea domeniilor în care se utilizează bazele de date Datorită potenţialului ma

Proceduri stocate Syntax: CREATE PROCEDURE <Name> type1,...] AS -- secventa de comenzi SQL GO O procedura stocata se ruleaza cu EXEC: EXEC <N

E_d_Informatica_sp_SN_2014_bar_10_LRO

Metode avansate de gestiune a documentelor și a sistemelor de calcul - LABORATOR 1 -

Laborator 2 Incompatibilităţi/Diferenţe între C şi C++ Completări C++ Supraîncărcarea (redefinirea) numelui de funcţii În C nu este permisă existenţa

Logică și structuri discrete Relații. Funcții parțiale Marius Minea marius/curs/lsd/ 20 octombrie 2014

Microsoft Visual C++ (abreviat MSVC) is a commercial integrated development environment (IDE) product engineered by Microsoft for the C, C++, and C++/

Microsoft Word - cap2.2.UNIX-NOS.doc

TERMENI DE REFERINȚĂ Servicii de consultanță pentru mentenanța Sistemului de Management al Informațiilor existent (SMI) pentru Asistență Socială siste

Utilizare Internet

PROIECT DIDACTIC Clasa a VII-a Informatică și TIC

Operatorii in C Expresii Operatori aritmetici Operatori de asignare Operatori de incrementare si decrementare Operatori relationali Operatori logici O

Paradigme de programare

Microsoft Word - Algoritmi genetici.docx

Microsoft Word - lab_access.doc

Coman Marinela Furnizor program formare acreditat: CCD BRĂILA Denumire program: INFORMATICĂ ŞI TIC PENTRU GIMNAZIU Clasa a V-a Categorie: 1; Tip de co

LABORATOR 2

aplicatii java

Logică și structuri discrete Mulțimi Casandra Holotescu

Microsoft Word - O problema cu bits.doc

Biomedical Wi-Fi data transmissons

Packet Tracer - Configurarea ACL-urilor extinse - Scenariul 1 Topologie Tabela de Adresare R1 Echipament Interfață Adresă IP Masca de subreţea Default

Curs7

Probleme proiect TP BITPERM Implementați un algoritm care citește de la intrarea standard două numere naturale și scrie la ieșirea standard da

1

BIOFEEDBACK 2014 SRL GDPR POLITICA DE PĂSTRARE A DATELOR ȘI DE PROTECȚIE A ÎNREGISTRĂRILOR Cod: GDPR Ediția: 01 Revizia: 00 Autor: Ing. Petre Be

Programarea şi utilizarea calculatoarelor

PowerPoint Presentation

O SINGURĂ licență și ai acces de pe oricâte stații de lucru! Olteniei nr.4, Baia Mare Tel.: 0262 / , 0743 /

SUBPROGRAME

Microsoft Word - Lab1a.doc

PR_COD_1amCom

Entrepreneurship and Technological Management

Microsoft PowerPoint - 11_USO_curs_08.ppt [Compatibility Mode]

ASOCIAȚIA GRUPUL DE ACŢIUNE LOCALĂ CRIVĂŢUL DE SUD-EST Adresa: Strada Staţiunii, nr 16 Balta Albã Telefon: 0765

PowerPoint Presentation

Microsoft Word - CarteC.doc

PowerPoint Presentation

Microsoft Word - Curs_08.doc

Prezentarea calculatorului

PowerPoint Presentation

Информационная система персонализации, печати и учета документов об образовании

Concurs online de informatică Categoria PROGRAMARE Secţiunea 5-6 avansaţi PROBLEMA puncte DANS De 1 Iunie - Ziua Copilului se organizează un spe

PowerPoint-Präsentation

PowerPoint Presentation

aplicatii java

FISA CONFORMITATE pentru masura M6/ 6B Investitii pentru dezvoltarea infrastructurii sociale

A

Lecții de pregă,re la informa,că Admitere 2019 Tema: Discutarea problemelor date la ul,mele sesiuni de admitere Bogdan Alexe

FIȘA DE VERIFICARE A INCADRARII PROIECTULUI (M1/ 6B) Dezvoltarea zonei GAL prin investitii realizate in dezvoltarea infrastructurii din interiorul loc

Baze de date-Anul 2

Limbaje de Programare Curs 6 – Functii de intrare-iesire

Laborator 2: Instrucţiuni Java şi lucru cu şiruri de caractere Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 18 octombrie 2011

Propunator: Morar Florin Colegiul National Silvania Zalau Discipina: Informatica Nivel liceal, cls. XII 1.Să se scrie în limbajul C/C++ definiţia comp

Documentaţie Tehnică Verificare TVA API Ultima actualizare: 1 ianuarie / 92 1

Termeni de utilizare specifici produselor

Diapositive 1

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea Dunărea de Jos Galați 1.2 Facultatea Economie și Administr

CAPITOLUL I

Laborator - Configurarea Rutelor IPv4 Statice și Implicite Topologie Tabela de Adresare Echipame nt Interfață Adresă IP Masca de subreţea Default Gate

Object Oriented Programming

Transcriere:

Universitatea Politehnica București Catedra de Calculatoare Laborator 4 Cereri SQL Autori Conf. Dr. Ing. Alexandru Boicea Ș.L. Dr. Ing. Ciprian-Octavian Truică

Cuprins Cereri SQL Cereri simple 10.03.2019 Laborator 4 2

Cereri SQL Cererile de interogare SQL folosesc în exculsivitate comanda DML SELECT; Această comandă este utilizată atât pentru interogarea obiectelor create de utilizator cât și a obiectelor de la nivelul sistemului de gestiune. 10.03.2019 Laborator 4 3

Cereri SQL Sintaxa comenzii: SELECT [DISTINCT ALL] [schema.table.]expression [[as] expression_alias] FROM [schema.]table[@dblink] [table_alias] [WHERE conditions] [[START WITH conditions] CONNECT BY [NOCYCLE] conditions]] [{UNION [ALL] INTERSECT MINUS} SELECT command] [[GROUP BY expressions] [HAVING conditions]] [ORDER BY expressions positions [ASC DESC]] [FOR UPDATE OF schema.table.column [NOWAIT]] 10.03.2019 Laborator 4 4

Cereri SQL DISTINCT returnează numai o înregistrare în cazul în care comanda găsește valori duplicate pe coloana unde apare; ALL returnează toate înregistrările simple și duplicate; schema.table reprezintă numele complet de identificare a tabelului/view-ului (în general schema are același nume cu utilizatorul) ; expression reprezintă numele unei coloane sau o expresie care folosește funcții de sistem (sau stocate); expression_alias este un nume alocat unei expresii care va fi folosit în formatarea coloanei (apare în antetul listei); dblink reprezintă numele de identificare, complet sau parțial, a unei baze de date. 10.03.2019 Laborator 4 5

Cereri SQL table_alias este un nume alocat unei tabele/view care va fi folosit în cererile corelate; WHERE conditions reprezintă o condiție (înlănțuire de condiții) care trebuie să fie îndeplinită în criteriul de selecție a înregistrărilor; START WITH conditions stabilește criteriul de selecție pentru prima înregistrare pentru o ordonare ierarhică; CONNECT BY conditions stabilește o ierarhie de selecție a înregistrărilor; GROUP BY expressions stabilește criteriile de grupare a înregistrărilor (numele coloanelor folosite în criteriul de grupare). 10.03.2019 Laborator 4 6

Cereri SQL HAVING conditions restricționarea înregistrărilor din grup la anumite condiții; UNION [ALL] INTERSECT MINUS combină rândurile selectate de mai multe comenzi SELECT prin aplicarea anumitor restricții; ORDER BY expressions positions ordonează înregistrările selectate după coloanele din expresie sau în ordinea coloanelor specificate prin poziție; FOR UPDATE OF face o blocare (lock) a înregistrărilor în vederea modificării anumitor coloane; NOWAIT returnează controlul userului dacă comanda așteaptă eliberarea unei înregistrări blocate de un alt user. 10.03.2019 Laborator 4 7

Cereri SQL Mai multe informații http://docs.oracle.com/cd/e16655_01/server.121/e17209/statements _10002.htm#SQLRF01702 http://docs.oracle.com/cd/e16655_01/server.121/e17209/queries003. htm#sqlrf52332 http://docs.oracle.com/cd/e16655_01/server.121/e17209/queries004. htm#sqlrf52341 http://docs.oracle.com/cd/e16655_01/appdev.121/e18410/ch_seven. htm#zzpre745 10.03.2019 Laborator 4 8

Cereri simple Ex. 1. Să se creeze o copie a tabelului DEPT care să se numească departamente cu următoarele coloane: id_dep number(2), den_dep varchar2(14), locatie varchar2(13). 10.03.2019 Laborator 4 9

Cereri simple Ex. 2. Să se creeze o copie a tabelului EMP care să se numească angajati (coloanele au aceeași denumire ca în laboratorul 3). 10.03.2019 Laborator 4 10

Cereri simple Ex. 3. Să se selecteze toate înregistrările și toate coloanele din tabela angajați. Ex. 4. Să se selecteze id-ul și numele departamentului din tabela departamente. Ex. 5. Să se selecteze id-ul, numele, funcția și data angajării pentru toți angajații din firmă, ordonați descrescător în funcție de id. Concatenați id-ul cu numele. 10.03.2019 Laborator 4 11

Cereri simple Observație: Operatorul de concatenare a șirurilor de caractere este: În Oracle În Microsoft SQL Server + În Oracle, MySQL, PostgreSQL și Microsoft SQL Server există funcția concat(diferite implementări) pentru concatenarea șirurilor de caractere (se va prezenta ca funcție în laboratorul 6). 10.03.2019 Laborator 4 12

Cereri simple Ex. 6. Să se selecteze id-ul, numele, funcția și venitul lunar pentru toți angajații din firmă. Să se adauge la select o coloană goală care să se numească semnătura. Concatenați id-ul cu numele. Ordonați după departament. 10.03.2019 Laborator 4 13

Cereri simple Ex. 7. Să se selecteze numele și funcția angajaților. Ex. 8. Să se facă o listă cu numele departamentului și codul acestuia. Ordonați după numele departamentului. 10.03.2019 Laborator 4 14

Clauza WHERE este folosită pentru a compara valorile unei coloane, valori literale, expresii aritmetice sau funcții și poate avea patru tipuri de parametri: Nume de coloane Operatori de comparație Operatori de negație Listă de valori 10.03.2019 Laborator 4 15

Operatorii de comparație pot fi de două feluri: operatori logici și operatori SQL Operatori Logici Operatori SQL Operator Semnificație Operator Semnificație = Egal BETWEEN val1 AND val2 Verifică daca o valoare se află între două valori date (inclusiv) > Mai mare decât IN (list) Compară dacă valoarea se află în lista de valori list >= Mai mare sau egal decât LIKE Compară cu un model de tip caracter/șir de caractere < Mai mic decât IS NULL Verifică dacă este o valoare NULL <= Ma mic sau egal decât 10.03.2019 Laborator 4 16

Operatorii de negație pot fi de două feluri: operatori logici și operatori SQL Operatori Logici Operatori SQL Operator Semnificație Operator Semnificație!= Diferit de (UNIX, Windows) NOT BETWEEN val1 AND val2 Verifică daca o valoare nu se află între două valori date (inclusiv) ^= Diferit de IBM NOT IN (list) Compară dacă valoarea nu se află în lista de valori list <> Diferit de toare OS NOT LIKE Compară dacă este diferit de un caracter/șir de caractere NOT column_name {= > >= < <=} Neagă operatorul de comparație IS NOT NULL Verifică dacă o valoare nu este NULL 10.03.2019 Laborator 4 17

Observații: Pentru a compune expresii logice cu mai multe condiții se folosesc operatorii logici AND și OR. Predicatul AND returnează adevărat dacă toate condițiile sunt adevărate, predicator OR este adevărat dacă cel puțin una dintre condiții este adevărată. Se pot combina operatorii AND și OR în aceeași expresie logică în clauza WHERE, iar în acest caz operatorii AND sunt evaluați primii și apoi operatorii OR (precedența operatorului AND este mai mare decât cea a operatorului OR) Dacă operatorii au precedență egală atunci ei se evaluează de la stânga la dreapta. 10.03.2019 Laborator 4 18

Precedența operatorilor logici este următoarea: 1. Operatorii de comparație și operatorii SQL au precedență egală (=,<,<=,>,>=,<>,!=,^=, BETWEEN, IN, LIKE, IS NULL) 2. NOT (pentru inversarea rezultatului unei expresii logice) 3. AND 4. OR Pentru a fi siguri de ordinea de execuție a operațiilor se recomandă folosirea parantezelor rotunde. 10.03.2019 Laborator 4 19

Ex. 9. Să se listeze toți angajații din departamentul 10. 10.03.2019 Laborator 4 20

Ex. 10. Să se selecteze toți angajații care au funcția MANAGER. Ordonați după id-ul departamentului. 10.03.2019 Laborator 4 21

Observații: Deși comenzile SQL nu sunt case sensitive, datele de tip șir de caractere sunt. Atenție când folosiți operatorii de comparație și negație pe șiruri de caractere. Funcția lower(parameter) este o funcție de sistem care transformă toate caracterele din șirul de caractere parameter în litere mici. Funcția inversă este upper(parameter) care transformă toate caracterele din parameter în litere mari. Parametrul poate să fie un șir de caractere, o expresie(funcție) care întoarce un șir de caractere sau un nume de coloană în care se țin valori de tip șir de caractere. 10.03.2019 Laborator 4 22

Ex. 11. Selectați toate persoanele care s-au angajat intr-o anumită perioadă. 10.03.2019 Laborator 4 23

10.03.2019 Laborator 4 24

Ex. 12. Să se listeze id-ul, numele, funcția, venitul lunar pentru angajații care au următoarele id-uri: 7499,7902, 7876. 10.03.2019 Laborator 4 25

10.03.2019 Laborator 4 26

Ex. 13. Să se selecteze toate persoanele care au fost angajate în anul 1980. 10.03.2019 Laborator 4 27

Ex. 14. Să se selecteze toate persoanele al căror nume începe cu litera F și numele funcției are 7 caractere. 10.03.2019 Laborator 4 28

Observație: Operatorul LIKE poate fi folosit cu simbolurile _ și % pentru a selecta rândurile care se potrivesc cu un caracter sau un subșir de caractere. Simbol Semnificație _ (underline) Înlocuit într-un șir, poate să fie orice caracter % Orice secvență de mai multe caractere 10.03.2019 Laborator 4 29

Ex. 15. Să se listeze angajații din departamentul 20 care nu au primit comision. 10.03.2019 Laborator 4 30

Ex. 16. Să se listeze angajații care au primit comision și au funcția SALESMAN. 10.03.2019 Laborator 4 31

Observații: Dacă se compară o coloană sau expresie cu NULL, atunci operatorul de comparație trebuie să fie IS [NOT] NULL. Dacă se folosește orice alt operator rezultatul va fi întotdeauna FALSE. Dacă pentru exercițiile 15 și 16, în loc de IS [NOT] NULL se utilizau expresiile comision = NULL sau comision <> NULL rezultatul ar fi fost FALSE. 10.03.2019 Laborator 4 32

Ex. 17. Să se selecteze toți angajații care au funcția MANAGER și salariul peste 1500, și toți angajații care au funcția ANALYST. 10.03.2019 Laborator 4 33

Exerciții 1. Selectați toți angajații care s-au angajat înainte de anul 1982 și nu au primit comision. 2. Selectați toți angajații care au salariul peste 3000 și nu au șefi, ordonați după departament. 3. Selectați numele, funcția și venitul anual al angajaților care nu au funcția MANAGER pentru un departament introdus de la tastatură. 4. Selectați departamentul, numele, data angajării și salariul tuturor persoanelor angajate în anul 1981 din două departamente care se introduc de la tastatură. 10.03.2019 Laborator 4 34