Academia de Studii Economice, Bucuresti
Cibernetica, Statistica si Informatica Economica
Proiect baze de date
-Departamentul Sales al unui ONG-
Scenariu:
Departamentul Sales este impartit in 3 divizii: Fundraising, Client Services si Event planning. Dintr-o divizie pot face parte mai multi membri, iar fiecare membru face parte dintr-o singura divizie. Un membru este definit prin nume, prenume, telefon, adresa de e-mail, data cand a inceput sa activeze in aceast department si functia pe care o are. Pot fi mai multi membrii cu aceasi functie.
Fiecare membru poate avea mai multe persoane de contact sau parteneri, reprezentanti ai unor companii. Un partener colaboreaza cu un singur membru.
O companie poate avea mai multi reprezentanti, dar un reprezentat (partener pentru ONG) lucreaza la o singura companie.
Companiile pot avea departament de CSR sau nu.
Pentru un proiect al ONG-ului se pot incheia mai multe contracte cu mai multe companii.
Printr-un contract, se reverza unul sau mai multe pachete, ce contin cate un produs, la un anumit pret negociat si intr-o anumita cantitate.
Produsele sunt specifice fiecarui proiect si pot face parte din mai multe pachete.
Definirea schemei bazei de date
--creare table DIVIZII
create table DIVIZII (
id_divizii number constraint divizii_pk primary key
den_divizii varchar2 not null
desc_divizii varchar2
);
--creare tabel MEMBRII
create table MEMBRII(
id_membrii number constraint membrii_pk primary key
prenume varchar2 not null
nume varchar2 not null
telefon varchar2 not null
email varchar2 not null
data_start date default sysdate
functie varchar2
id_divizii number
constraint divizii_fk foreign key (id_divizii) references DIVIZII(ID_DIVIZII)
);
--creare tabel COMPANII
create table COMPANII(
id_companie number constraint companii_pk primary key
den_companii varchar2 not null
adresa varchar2
telefon varchar2
email varchar2
dept_csr varchar2 constraint check_csr check (upper(dept_csr) in 'Y' 'N'
);
--creare tabel PARTENERI
create table PARTENERI(
id_parteneri number constraint parteneri_pk primary key
nume varchar2 not null
prenume varchar2 not null
telefon varchar2 not null
email varchar2 not null
linkedin varchar2
id_membrii number
id_companii number
constraint membrii_fk foreign key (id_membrii) references MEMBRII(ID_MEMBRII),
constraint companii_fk foreign key (id_companii) references COMPANII(ID_COMPANIE)
);
--creare tabel PROIECTE
create table PROIECTE(
id_proiecte number constraint proiecte_pk primary key
den_proiecte varchar2 not null
desc_proiecte varchar2
locatie varchar2
);
--creare tabel CONTRACTE
create table CONTRACTE(
id_contracte number constraint contracte_pk primary key
data_contracte date default sysdate not null
id_companie number
id_proiecte number
constraint compcontract_fk foreign key (id_companie) references COMPANII(ID_COMPANIE),
constraint proiectecontract_fk foreign key (id_proiecte) references PROIECTE(ID_PROIECTE)
);
-- creare tabel PRODUSE
create table PRODUSE(
id_produse number constraint produse_pk primary key
den_produse varchar2 not null
pret_lista number not null
caracteristici varchar2
id_proiecte number
constraint proiecte_fk foreign key (id_proiecte) references PROIECTE(ID_PROIECTE)
);
-- creare tabel PACHETE
create table PACHETE(
id_pachete number constraint pachete_pk primary key
pret number not null
cantitate number not null
id_produse number
id_contracte number
constraint produse_fk foreign key (id_produse) references PRODUSE(ID_PRODUSE),
constraint contracte_fk foreign key (id_contracte) references CONTRACTE(ID_CONTRACTE)
);
--DDL: adaugarea unei chei unice in tabelul DIVIZII
alter table divizii
add constraint divizii_uk unique (den_divizii);
--definire cluster si index
Create cluster numar_proiecte (nrpro number
Create index idx_clus_nrpro on cluster numar_proiecte;
--DML - populare tabel PROIECTE
insert into proiecte (id_proiecte, den_proiecte, desc_proiecte, locatie) values 'PClovers' 'revista pentru ciberneticieni' 'CSIE'
insert into proiecte (id_proiecte, den_proiecte, desc_proiecte, locatie) values 'Ghidul bobocului' 'revista pentru boboci' 'ASE'
insert into proiecte (id_proiecte, den_proiecte, desc_proiecte, locatie) values 'Econosofia' 'conferinta' 'CSIE 2003'
insert into proiecte (id_proiecte, den_proiecte, desc_proiecte, locatie) values 'Umanitar' 'concert umanitar' 'B52'
insert into proiecte (id_proiecte, den_proiecte, desc_proiecte, locatie) values 'Olimpiada studentilor' 'competitie sportiva' 'Stadionul Tineretului'
insert into proiecte (id_proiecte, den_proiecte, desc_proiecte, locatie) values 'Forex' 'workshop' 'OCS'
insert into proiecte (id_proiecte, den_proiecte, desc_proiecte, locatie) values 'CS competition' 'cometitie PC Game lovers' 'CSIE 2013'
insert into proiecte (id_proiecte, den_proiecte, desc_proiecte, locatie) values 'CSRteam' 'seminar' 'VerdeCafe'
insert into proiecte (id_proiecte, den_proiecte, desc_proiecte, locatie) values 'Click' 'conferinta' 'Universitate'
insert into proiecte (id_proiecte, den_proiecte, desc_proiecte, locatie) values 'Oracle jobs' 'targ de job-uri' 'Oracle'
--DML - populare tabel DIVIZII
insert into divizii (id_divizii, den_divizii, desc_divizii) values 'Fundraising' null
insert into divizii (id_divizii, den_divizii, desc_divizii) values 'EventPlanning' 'organizare evenimente'
insert into divizii (id_divizii, den_divizii, desc_divizii) values 'Client Sevicies' null
--DDL: campul adresei de e-mail este prea scurt. este nevoie de 40 de caractere pentru a scrie o adresa.
alter table membrii modify (email varchar2
-- DML - populare tabel Membrii
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Andreea' 'Popescu' 'andreeapopescu@gmail.com', to_date ( 'dd-mm-yyyy' 'manager'
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Alexandru' 'Popescu' 'alexandrupopescu@gmail.com', to_date ( 'dd-mm-yyyy' 'manager'
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Florin' 'Diaconu' 'florindiaconu@gmail.com', to_date ( 'dd-mm-yyyy' 'manager'
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Mihai' 'Ionescu' 'mihaiionescu@gmail.com', to_date ( 'dd-mm-yyyy' 'membru'
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Andra' 'Dinescu' 'andadinescu@gmail.com', to_date ( 'dd-mm-yyyy' 'membru'
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Simona' 'Mihai' 'simonamihai@gmail.com', to_date ( 'dd-mm-yyyy' 'membru'
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Camelia' 'Stanca' 'cameliastanca@gmail.com', to_date ( 'dd-mm-yyyy' 'membru'
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Ana' 'Ilie' 'anailie@gmail.com', to_date ( 'dd-mm-yyyy' 'membru'
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Vlad' 'Cosmin' 'vladcosmin@gmail.com', to_date ( 'dd-mm-yyyy' 'membru'
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Eduard' 'Rapan' 'eduardrapan@gmail.com', to_date ( 'dd-mm-yyyy' 'membru'
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Oana' 'Petre' 'oanapetre@gmail.com', to_date ( 'dd-mm-yyyy' 'membru'
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Andreea' 'Nicolae' 'andreeanicolae@gmail.com', to_date ( 'dd-mm-yyyy' 'membru'
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Ruxandra' 'Mosescu' 'ruxandramosescu@gmail.com', to_date ( 'dd-mm-yyyy' 'membru'
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Gabriel' 'Floroiu' 'gabrielfloroiu@gmail.com', to_date ( 'dd-mm-yyyy' 'membru'
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Dragos' 'Nitescu' 'dragosnitescu@gmail.com', to_date ( 'dd-mm-yyyy' 'membru'
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Ioana' 'Avram' 'ioanaavram@gmail.com', to_date ( 'dd-mm-yyyy' 'membru'
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Maria' 'Tache' 'mariatache@gmail.com', to_date ( 'dd-mm-yyyy' 'membru'
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Razvan' 'Sirghi' 'razvansirghi@gmail.com', to_date ( 'dd-mm-yyyy' 'membru'
insert into membrii(id_membrii, prenume, nume, telefon, email, data_start, functie, id_divizii) values 'Mihai' 'Trandafir' 'mihaitrandafir@gmail.com', to_date ( 'dd-mm-yyyy' 'membru'
--DML populare tabel COMPANII
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'Enel' null null 'Y'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'Phillips' null null 'N'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'Alliantz' null null 'Y'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'Dedeman' null null 'Y'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'Carefour' null null 'N'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'Kenvelo' null null 'N'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'FruFru' null null 'N'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'Automobile Bavaria' null null 'N'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'Adecco' null null 'Y'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'Avira' null null 'N'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'Cosmote' null null 'Y'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'Vodafone' null null 'Y'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'BRD' null null 'Y'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'Petrom' null null 'Y'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'Orange' null null 'Y'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'Asesoft' null null 'N'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'TotalSoft' null null 'N'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'Oracle' null null 'Y'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'Snack Attack' null null 'N'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'KFC' null null 'N'
insert into companii(id_companie, den_companii, adresa, telefon, email, dept_csr) values 'Coca Cola' null null 'Y'
--DMl: populare tabel Produse
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'Coperta2' 'reclama pe coperta 2'
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'Coperta3' 'reclama pe coperta 3'
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'Coperta4' 'reclama pe coperta 4'
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'Coperta2a' 'reclama pe coperta 2a'
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'Coperta3a' 'reclama pe coperta 3a'
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'Coperta4a' 'reclama pe coperta 4a'
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'SiglaFlyer1' 'aparitie sigla pe flyer 1'
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'SiglaFlyer2' 'aparitie sigla pe flyer 2'
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'SiglaFlyer3' 'aparitie sigla pe flyer 3'
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'SiglaFlyer4' 'aparitie sigla pe flyer 4'
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'SiglaFlyer5' 'aparitie sigla pe flyer 5'
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'SiglaAfis1' 'aparitie sigla pe afis '
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'SiglaAfis2' 'aparitie sigla pe afis '
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'SiglaAfis3' 'aparitie sigla pe afis '
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'SiglaAfis4' 'aparitie sigla pe afis '
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'SiglaAfis5' 'aparitie sigla pe afis '
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'SiglaAfis6' 'aparitie sigla pe afis '
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'SiglaAfis7' 'aparitie sigla pe afis '
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'SiglaAfis8' 'aparitie sigla pe afis '
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'Sampling' 'Voluntari ce impart produsele companiei la eveniment '
insert into PRODUSE (Id_Produse, DEN_PRODUSE, PRET_LISTA, CARACTERISTICI, ID_PROIECTE) values 'Sampling' 'reclama pe coperta 2'
--Dml : populare tabel Contracte
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
insert into contracte (id_contracte, data_contracte, id_companie, id_proiecte) values , to_date( 'dd-mm-yyyy'
--DML: populare tabel pachete
insert into pachete (id_pachete, pret, cantitate, id_produse, id_contracte)values
insert into pachete (id_pachete, pret, cantitate, id_produse, id_contracte)values
insert into pachete (id_pachete, pret, cantitate, id_produse, id_contracte)values
insert into pachete (id_pachete, pret, cantitate, id_produse, id_contracte)values
insert into pachete (id_pachete, pret, cantitate, id_produse, id_contracte)values
insert into pachete (id_pachete, pret, cantitate, id_produse, id_contracte)values
insert into pachete (id_pachete, pret, cantitate, id_produse, id_contracte)values
insert into pachete (id_pachete, pret, cantitate, id_produse, id_contracte)values
insert into pachete (id_pachete, pret, cantitate, id_produse, id_contracte)values
insert into pachete (id_pachete, pret, cantitate, id_produse, id_contracte)values
insert into pachete (id_pachete, pret, cantitate, id_produse, id_contracte)values
insert into pachete (id_pachete, pret, cantitate, id_produse, id_contracte)values
insert into pachete (id_pachete, pret, cantitate, id_produse, id_contracte)values
insert into pachete (id_pachete, pret, cantitate, id_produse, id_contracte)values
--DML: populare Tabel PARTENERI
insert into parteneri (id_parteneri, nume, prenume, telefon, email, linkedin, id_membrii, id_companii) values 'Ionescu' 'Gabriela' 'gionescu@enel.ro' 'gabrielaionescu'
insert into parteneri (id_parteneri, nume, prenume, telefon, email, linkedin, id_membrii, id_companii) values 'Mitrana' 'Doru' 'mdoru@enel.ro' null
insert into parteneri (id_parteneri, nume, prenume, telefon, email, linkedin, id_membrii, id_companii) values 'Lotrea' 'Paraschiv' 'plotrea@phillips.com' 'lotreap'
insert into parteneri (id_parteneri, nume, prenume, telefon, email, linkedin, id_membrii, id_companii) values 'Mihalcea' 'Vlad' 'mvlad@alliantz.ro' null
insert into parteneri (id_parteneri, nume, prenume, telefon, email, linkedin, id_membrii, id_companii) values 'Udrea' 'Silvia' 'silviau@dedeman.ro' null
insert into parteneri (id_parteneri, nume, prenume, telefon, email, linkedin, id_membrii, id_companii) values 'Vedea' 'Nicoleta' 'nicoletav@dedema.ro' null
insert into parteneri (id_parteneri, nume, prenume, telefon, email, linkedin, id_membrii, id_companii) values 'Oancea' 'Marin' 'marino@carefour.ro' null
insert into parteneri (id_parteneri, nume, prenume, telefon, email, linkedin, id_membrii, id_companii) values 'Musat' 'Vasile' 'valisem@kenvelo.ro' null
insert into parteneri (id_parteneri, nume, prenume, telefon, email, linkedin, id_membrii, id_companii) values 'Mihaita' 'Andreea' 'andreea@frufru.ro' null
insert into parteneri (id_parteneri, nume, prenume, telefon, email, linkedin, id_membrii, id_companii) values 'Doldora' 'Marioara' 'marioara@bav.ro' null
insert into parteneri (id_parteneri, nume, prenume, telefon, email, linkedin, id_membrii, id_companii) values 'Eftimie' 'Elena' 'elena@bav.ro' null
insert into parteneri (id_parteneri, nume, prenume, telefon, email, linkedin, id_membrii, id_companii) values 'Stroe' 'Anca' 'ancas@adecco.ro' null
insert into parteneri (id_parteneri, nume, prenume, telefon, email, linkedin, id_membrii, id_companii) values 'Mircea' 'Laura' 'lauram@avira.ro' null
COMENZI DDL:
--Sa se adauge coloana pozitie in tabelul Parteneri. Functia cea mai intalnita este cea de MK Manager.
alter table parteneri add (pozitie varchar2 default 'MK Manager'
--Sa se stearga coloana cu linkurile catre pagina de linkedin a fiecarui partener.
alter table parteneri drop column linkedin
COMENZI DML:
--Sa se insereze in campul parteneri reprezentatii firmelor Orange si Oracle.
insert into parteneri(id_parteneri,nume,prenume,telefon,email,id_membrii,id_companii,pozitie) values 'Neagoe' 'Diana' 'dianan@orange.ro' 'HR Manager'
insert into parteneri(id_parteneri,nume,prenume,telefon,email,id_membrii,id_companii,pozitie) values 'Nicusor' 'Andrei' 'nandrei@oracle.ro' 'HR Manager'
--Sa se modifice functia pentru toti membrii diviziei event planning in ‘reprezentant’.
update membrii set functie= 'Reprezentat' where id_divizii= (select id_divizii from divizii where den_divizii Like 'Event%'
--Sa se stearga produsele in valoare de 100 Ron.
delete from produse where pret_lista=
SELECT
--Sa se indice prin ‘Da’ sau ‘Nu’ daca o companie are departament de CSR sau nu si sa se ordoneze in functie de acest criteriu.
select den_companii, (case when dept_csr='Y' then 'da'
else 'nu' end as confirmare
from companii
order by confirmare
--Afisati care sunt angajatii Enel cu care colaboreaza Departamentul.
select nume || || prenume AS Nume
from parteneri
where id_companii = (select id_companie from companii where den_companii='Enel'
--Pentru ce proiecte a avut Oracle parteneriat cu acest ONG?
select proiecte.den_proiecte
from proiecte, contracte
where proiecte.id_proiecte=contracte.id_proiecte
and contracte.id_companie=(select companii.id_companie from companii where companii.den_companii='Oracle'
--Determinati valoarea produselor achizitionate de catre Oracle pentru proiectele respective.
select proiecte.den_proiecte, pachete.pret*pachete.cantitate as valoare
from proiecte, pachete, contracte
where proiecte.id_proiecte=contracte.id_proiecte
and contracte.id_companie=(select companii.id_companie from companii where companii.den_companii='Oracle'
and pachete.id_contracte=contracte.id_contracte;
--Cati membrii noi au intrat in acest an in departament?
select count from membrii where to_char(data_start, 'yyyy'
--Afisati toate companiile si contactele acestora, daca exita. Daca nu exista parteneri, atunci se afiseaza doar companiile. PRimele vor aparea companiile unde exista deja parteneri.
select companii.*, parteneri.nume || ||Parteneri.prenume nume, parteneri.telefon, parteneri.email
from companii, parteneri
where companii.id_companie = parteneri.id_companii(+)
order by parteneri.nume nulls last
--Care sunt cei mai vechi membrii si ce functii au ei?
select prenume, nume, functie, data_start from membrii
where data_start=(select min(data_start) from membrii)
--Care este proiectul ce a avut cea mai mare valoare a contractului si cu cine a fost realizat acest contract?
select proiecte.den_proiecte, contracte.id_contracte, companii.den_companii
from proiecte, contracte, companii
where contracte.id_proiecte = proiecte.id_proiecte
and contracte.id_contracte IN select id_contracte from pachete where pret*cantitate = (select max (pret*cantitate) from pachete))
and contracte.id_companie = companii.id_companie
--Afisati doar membrii care au personae de contact/parteneri.
select Distinct membrii.prenume|| || membrii.nume as 'Sales Representative', membrii.functie Pozitie, divizii.den_divizii Divizie
from membrii, divizii, parteneri
where membrii.id_divizii=divizii.id_divizii
and parteneri.id_membrii=membrii.id_membrii
--Afisati toate produsele sub 400Ron ce ofera companiilor vizibilitate prin aparitia siglei la un eveniment.
select from produse where pret_lista <=
intersect
select from produse where lower(den_produse) like '%fl%'
--Afisati toti managerii diviziilor cu exceptia diviziilor 11 si 12.
select from membrii where lower(functie) like '%manager%'
minus
select from membrii where id_divizii IN
GESTIUNEA ALTOR OBIECTE ALE BAZEI DE DATE:
Create un nou table (view), in care se modifica preturile produselor vechi.
create view produsenoi as
select den_produse denumire,pret_lista pret ,
case when pret_lista <= then
when pret_lista <= then
when pret_lista <= then
else null end as pretnou
from produse
order by pret_lista nulls last
Politica de confidentialitate |
![]() |
Copyright ©
2021 - Toate drepturile rezervate. Toate documentele au caracter informativ cu scop educational. |
Termeni si conditii |
Contact |
Creeaza si tu |