Sunteți pe pagina 1din 8

use DWQueue;

/
*----------------------------------------------------------------------------------
--------*/
CREATE DATABASE universitate;
use universitate;

create table Discipline(


idDisciplina int IDENTITY(1,1) primary key NOT NULL,
nume nvarchar(200) NOT NULL,
orePlan int NOT NULL
);

create table Grupe(


idGrupa int IDENTITY(1,1) primary key NOT NULL,
cod nvarchar(200) NOT NULL,
specialitate nvarchar(200),
facultate nvarchar(200)
);

create table Profesori(


idProfesor int IDENTITY(1,1) primary key NOT NULL,
nume nvarchar(200) NOT NULL,
prenume nvarchar(200) NOT NULL,
adresa nvarchar(200) NOT NULL,
);

create table Studenti(


idStudent int IDENTITY(1,1) primary key NOT NULL,
nume nvarchar(200) NOT NULL,
prenume nvarchar(200) NOT NULL,
adresa nvarchar(200) NOT NULL,
dataNasterii nvarchar(200) NOT NULL,
);

create table Reusita(


idNota int IDENTITY(1,1) primary key NOT NULL,
idStudent int foreign key references Studenti(idStudent),
idProfesor int foreign key references Profesori(idProfesor),
idGrupa int foreign key references Grupe(idGrupa),
idDisciplina int foreign key references Discipline(idDisciplina),
nota float NOT NULL,
tip nvarchar(200) NOT NULL,
dataNotarii datetime NOT NULL
);

ALTER TABLE Reusita ADD CONSTRAINT dataDefault DEFAULT GETDATE() FOR dataNotarii

/
*----------------------------------------------------------------------------------
--------*/

insert into Discipline(nume, orePlan) values


('Structuri de date si algoritmi', 76),
('Informatica aplicata', 46),
('Asamblare si depanare PC', 60),
('Cercetari Operationale', 76),
('Baze de date', 60),
('Retele informatice', 46),
('Matematica discreta', 60),
('Modelarea sistemelor', 46),
('Limbaje evakuate de programe (Java, Net)', 46),
('Tehnologii de procesare a informatiei', 46),
('Proiectarea sistemelor informatice', 60),
('Integrare informationala europeana', 20),
('Sisteme de operare', 60),
('Sisteme de calcul', 46),
('Programe aplicative', 46),
('Programarea calculatoarelor', 60),
('Programarea declarativa', 46),
('Programarea aplicatiilor Windows', 60),
('Programare WEB', 46),
('Practica de licenta', 80),
('Practica de productie', 80);

insert into Grupe(cod, specialitate, facultate) values


('cib171', 'Cibernetica', 'Informatica si Cibernetica'),
('inf171', 'Informatica', 'Informatica si Cibernetica'),
('ti171', 'Tehnologii Informationale', 'Informatica si Cibernetica');

insert into Profesori(nume, prenume, adresa) values


('Afanas', 'Alexandru', 'or. Chisinau'),
('Boaghi', 'Victor', 'or. Chisinau'),
('Cozmulici', 'Ion', 'or. Balti'),
('Bogdan', 'Vasile', 'or. Chisinau'),
('Cogilniceanu', 'Petru', 'or. Cricova'),
('Curtev', 'Elena', 'or. Chisinau'),
('Minascurta', 'Savela', 'or. Criuleni'),
('Scurtu', 'Tatiana', 'or. Chisinau'),
('Ursu', 'Dumitru', 'or. Chisinau'),
('Vihodet', 'Dumitru', 'or. Ialoveni'),
('Afanas', 'Anton', 'or. Chisinau'),
('Boaghi', 'Vera', 'or. Chisinau'),
('Cozmulici', 'Pavel', 'or. Cimislia'),
('Bogdan', 'Oleg', 'or. Chisinau'),
('Cogilniceanu', 'Nicolae', 'or. Chisinau');

insert into Studenti(nume, prenume, dataNasterii, adresa) values


('Afanas', 'Alexandru', '2000-01-01 10:00:00', 'or. Chisinau'),
('Boaghi', 'Victor', '2000-01-01 10:00:00', 'or. Chisinau'),
('Cozmulici', 'Ion', '2000-01-01 10:00:00', 'or. Chisinau'),
('Bogdan', 'Vasile', '2000-01-01 10:00:00', 'or. Chisinau'),
('Cogilniceanu', 'Petru', '2000-01-01 10:00:00', 'or. Chisinau'),
('Curtev', 'Elena', '2000-01-01 10:00:00', 'or. Chisinau'),
('Minascurta', 'Savela', '2000-01-01 10:00:00', 'or. Chisinau'),
('Scurtu', 'Tatiana', '2000-01-01 10:00:00', 'or. Chisinau'),
('Ursu', 'Dumitru', '2000-01-01 10:00:00', 'or. Chisinau'),
('Vihodet', 'Dumitru', '2000-01-01 10:00:00', 'or. Chisinau');
/*('Afanas', 'Anton', '2000-01-01 10:00:00', 'or. Chisinau'),
('Boaghi', 'Vera', '2000-01-01 10:00:00', 'or. Chisinau'),
('Cozmulici', 'Pavel', '2000-01-01 10:00:00', 'or. Chisinau'),
('Bogdan', 'Oleg', '2000-01-01 10:00:00', 'or. Chisinau'),
('Cogilniceanu', 'Nicolae', '2000-01-01 10:00:00', 'or. Chisinau'),
('Curtev', 'Nadejda', '2000-01-01 10:00:00', 'or. Chisinau'),
('Minascurta', 'Crsitina', '2000-01-01 10:00:00', 'or. Chisinau'),
('Scurtu', 'Iuliana', '2000-01-01 10:00:00', 'or. Chisinau'),
('Ursu', 'Maxim', '2000-01-01 10:00:00', 'or. Chisinau'),
('Vihodet', 'Dumitrita', '2000-01-01 10:00:00', 'or. Chisinau'),
('Vihodet', 'Iuliana', '2000-01-01 10:00:00', 'or. Chisinau')*/

insert into Reusita(idStudent, idDisciplina, idProfesor, idGrupa, tip, nota,


dataNotarii) values
(1, 1, 1, 1, 'examen', 5, '2019-01-01 10:00:00'),
(2, 1, 1, 2, 'examen', 6, '2019-01-01 11:01:00'),
(3, 1, 1, 3, 'examen', 7, '2019-01-01 12:02:00'),
(4, 1, 1, 1, 'examen', 8, '2019-01-01 13:12:00'),
(5, 1, 1, 2, 'examen', 9, '2019-01-01 14:12:00'),
(6, 1, 1, 3, 'examen', 10, '2019-01-01 15:00:00'),
(7, 1, 1, 1, 'examen', 4, '2019-01-02 10:01:00'),
(8, 1, 1, 2, 'examen', 5, '2019-01-02 10:02:00'),
(9, 1, 1, 3, 'examen', 6, '2019-01-02 10:12:00'),
(10, 1, 1, 1, 'examen', 9, '2019-01-02 10:12:00'),

(1, 2, 2, 1, 'curs', 5, '2019-02-01 10:00:00'),


(2, 2, 2, 2, 'curs', 6, '2019-02-01 9:01:00'),
(3, 2, 2, 3, 'curs', 7, '2019-02-04 11:02:00'),
(4, 2, 2, 1, 'curs', 8, '2019-02-01 12:12:00'),
(5, 2, 2, 2, 'curs', 9, '2019-02-01 13:12:00'),
(6, 2, 2, 3, 'curs', 10, '2019-02-05 14:00:00'),
(7, 2, 2, 1, 'curs', 4, '2019-02-01 15:01:00'),
(8, 2, 2, 2, 'curs', 5, '2019-02-03 10:02:00'),
(9, 2, 2, 3, 'curs', 6, '2019-02-01 8:12:00'),
(10, 2, 2, 1, 'curs', 9, '2019-02-01 10:12:00'),

(1, 3, 3, 1, 'curs', 10, '2019-02-01 10:00:00'),


(2, 3, 3, 2, 'curs', 9, '2019-02-01 9:01:00'),
(3, 3, 3, 3, 'curs', 8, '2019-02-04 11:02:00'),
(4, 3, 3, 1, 'curs', 7, '2019-02-01 12:12:00'),
(5, 3, 3, 2, 'curs', 6, '2019-02-01 13:12:00'),
(6, 3, 3, 3, 'curs', 5, '2019-02-05 14:00:00'),
(7, 3, 3, 1, 'curs', 4, '2019-02-01 15:01:00'),
(8, 3, 3, 2, 'curs', 5, '2019-02-03 10:02:00'),
(9, 3, 3, 3, 'curs', 6, '2019-02-01 8:12:00'),
(10, 3, 3, 1, 'curs', 7, '2019-02-01 10:12:00'),

(1, 4, 4, 1, 'examen', 5, '2019-03-01 10:00:00'),


(2, 4, 4, 2, 'examen', 7, '2019-03-01 11:01:00'),
(3, 4, 4, 3, 'examen', 2, '2019-03-01 12:02:00'),
(4, 4, 4, 1, 'examen', 4, '2019-03-01 13:12:00'),
(5, 4, 4, 2, 'examen', 10, '2019-03-01 14:12:00'),
(6, 4, 4, 3, 'examen', 15, '2019-03-01 15:00:00'),
(7, 4, 4, 1, 'examen', 8, '2019-03-02 10:01:00'),
(8, 4, 4, 2, 'examen', 9, '2019-03-02 10:02:00'),
(9, 4, 4, 3, 'examen', 7, '2019-03-02 10:12:00'),
(10, 4, 4, 1, 'examen', 5, '2019-04-02 10:12:00'),

(1, 5, 5, 1, 'examen', 5, '2019-03-01 10:00:00'),


(2, 5, 5, 2, 'examen', 7, '2019-03-01 11:01:00'),
(3, 5, 5, 3, 'examen', 2, '2019-03-01 12:02:00'),
(4, 5, 5, 1, 'examen', 4, '2019-03-01 13:12:00'),
(5, 5, 5, 2, 'examen', 10, '2019-03-01 14:12:00'),
(6, 5, 5, 3, 'examen', 15, '2019-03-01 15:00:00'),
(7, 5, 5, 1, 'examen', 8, '2019-03-02 10:01:00'),
(8, 5, 5, 2, 'examen', 9, '2019-03-02 10:02:00'),
(9, 5, 5, 3, 'examen', 7, '2019-03-02 10:12:00'),
(10, 5, 5, 1, 'examen', 5, '2019-04-02 10:12:00'),

(1, 6, 6, 1, 'curs', 10, '2019-04-01 10:00:00'),


(2, 6, 6, 2, 'curs', 9, '2019-04-01 9:01:00'),
(3, 6, 6, 3, 'curs', 8, '2019-04-04 11:02:00'),
(4, 6, 6, 1, 'curs', 7, '2019-04-01 12:12:00'),
(5, 6, 6, 2, 'curs', 6, '2019-04-01 13:12:00'),
(6, 6, 6, 3, 'curs', 5, '2019-04-05 14:00:00'),
(7, 6, 6, 1, 'curs', 4, '2019-04-01 15:01:00'),
(8, 6, 6, 2, 'curs', 5, '2019-04-03 10:02:00'),
(9, 6, 6, 3, 'curs', 6, '2019-04-01 8:12:00'),
(10, 6, 6, 1, 'curs', 7, '2019-04-01 10:12:00'),

(1, 7, 7, 1, 'examen', 5, '2019-10-06 10:00:00'),


(2, 7, 7, 2, 'examen', 6, '2019-10-06 11:01:00'),
(3, 7, 7, 3, 'examen', 7, '2019-10-06 12:02:00'),
(4, 7, 7, 1, 'examen', 8, '2019-10-06 13:12:00'),
(5, 7, 7, 2, 'examen', 9, '2019-10-06 14:12:00'),
(6, 7, 7, 3, 'examen', 10, '2019-10-06 15:00:00'),
(7, 7, 7, 1, 'examen', 4, '2019-10-06 10:01:00'),
(8, 7, 7, 2, 'examen', 5, '2019-10-06 10:02:00'),
(9, 7, 7, 3, 'examen', 6, '2019-10-06 10:12:00'),
(10, 7, 7, 1, 'examen', 9, '2019-10-06 10:12:00'),

(1, 8, 8, 1, 'curs', 5, '2019-09-09 10:00:00'),


(2, 8, 8, 2, 'curs', 6, '2019-09-09 9:01:00'),
(3, 8, 8, 3, 'curs', 7, '2019-09-09 11:02:00'),
(4, 8, 8, 1, 'curs', 8, '2019-09-09 12:12:00'),
(5, 8, 8, 2, 'curs', 9, '2019-09-09 13:12:00'),
(6, 8, 8, 3, 'curs', 10, '2019-09-09 14:00:00'),
(7, 8, 8, 1, 'curs', 4, '2019-09-09 15:01:00'),
(8, 8, 8, 2, 'curs', 5, '2019-09-09 10:02:00'),
(9, 8, 8, 3, 'curs', 6, '2019-09-09 8:12:00'),
(10, 8, 8, 1, 'curs', 9, '2019-09-09 10:12:00'),

(1, 9, 9, 1, 'curs', 10, '2019-11-10 10:00:00'),


(2, 9, 9, 2, 'curs', 9, '2019-11-10 9:01:00'),
(3, 9, 9, 3, 'curs', 8, '2019-11-10 11:02:00'),
(4, 9, 9, 1, 'curs', 7, '2019-11-01 12:12:00'),
(5, 9, 9, 2, 'curs', 6, '2019-11-01 13:12:00'),
(6, 9, 9, 3, 'curs', 5, '2019-11-05 14:00:00'),
(7, 9, 9, 1, 'curs', 4, '2019-11-01 15:01:00'),
(8, 9, 9, 2, 'curs', 5, '2019-11-03 10:02:00'),
(9, 9, 9, 3, 'curs', 6, '2019-11-01 8:12:00'),
(10, 9, 9, 1, 'curs', 7, '2019-11-01 10:12:00'),

(1, 10, 10, 1, 'examen', 5, '2019-12-01 10:00:00'),


(2, 10, 10, 2, 'examen', 7, '2019-12-01 11:01:00'),
(3, 10, 10, 3, 'examen', 2, '2019-12-01 12:02:00'),
(4, 10, 10, 1, 'examen', 4, '2019-12-01 13:12:00'),
(5, 10, 10, 2, 'examen', 10, '2019-12-01 14:12:00'),
(6, 10, 10, 3, 'examen', 15, '2019-12-01 15:00:00'),
(7, 10, 10, 1, 'examen', 8, '2019-12-02 10:01:00'),
(8, 10, 10, 2, 'examen', 9, '2019-12-02 10:02:00'),
(9, 10, 10, 3, 'examen', 7, '2019-12-02 10:12:00'),
(10, 10, 10, 1, 'examen', 5, '2019-12-02 10:12:00'),

(1, 11, 11, 1, 'examen', 5, '2019-01-01 10:00:00'),


(2, 11, 11, 2, 'examen', 7, '2019-02-01 11:01:00'),
(3, 11, 11, 3, 'examen', 2, '2019-03-01 12:02:00'),
(4, 11, 11, 1, 'examen', 4, '2019-04-01 13:12:00'),
(5, 11, 11, 2, 'examen', 10, '2019-05-01 14:12:00'),
(6, 11, 11, 3, 'examen', 15, '2019-06-01 15:00:00'),
(7, 11, 11, 1, 'examen', 8, '2019-09-02 10:01:00'),
(8, 11, 11, 2, 'examen', 9, '2019-10-02 10:02:00'),
(9, 11, 11, 3, 'examen', 7, '2019-11-02 10:12:00'),
(10, 11, 11, 1, 'examen', 5, '2019-12-02 10:12:00'),

(1, 12, 12, 1, 'curs', 10, '2019-12-01 10:00:00'),


(2, 12, 12, 2, 'curs', 9, '2019-09-01 9:01:00'),
(3, 12, 12, 3, 'curs', 8, '2019-10-04 11:02:00'),
(4, 12, 12, 1, 'curs', 7, '2019-06-01 12:12:00'),
(5, 12, 12, 2, 'curs', 6, '2019-05-01 13:12:00'),
(6, 12, 12, 3, 'curs', 5, '2019-04-05 14:00:00'),
(7, 12, 12, 1, 'curs', 4, '2019-03-01 15:01:00'),
(8, 12, 12, 2, 'curs', 5, '2019-02-03 10:02:00'),
(9, 12, 12, 3, 'curs', 6, '2019-01-01 8:12:00'),
(10, 12, 12, 1, 'curs', 7, '2019-11-01 10:12:00'),

(1, 13, 13, 1, 'examen', 5, '2019-01-01 10:00:00'),


(2, 13, 13, 2, 'examen', 7, '2019-02-01 11:01:00'),
(3, 13, 13, 3, 'examen', 2, '2019-03-01 12:02:00'),
(4, 13, 13, 1, 'examen', 4, '2019-04-01 13:12:00'),
(5, 13, 13, 2, 'examen', 10, '2019-05-01 14:12:00'),
(6, 13, 13, 3, 'examen', 15, '2019-06-01 15:00:00'),
(7, 13, 13, 1, 'examen', 8, '2019-09-02 10:01:00'),
(8, 13, 13, 2, 'examen', 9, '2019-10-02 10:02:00'),
(9, 13, 13, 3, 'examen', 7, '2019-11-02 10:12:00'),
(10, 13, 13, 1, 'examen', 5, '2019-12-02 10:12:00'),

(1, 14, 13, 1, 'curs', 10, '2019-12-01 10:00:00'),


(2, 14, 13, 2, 'curs', 9, '2019-09-01 9:01:00'),
(3, 14, 13, 3, 'curs', 8, '2019-10-04 11:02:00'),
(4, 14, 13, 1, 'curs', 7, '2019-06-01 12:12:00'),
(5, 14, 13, 2, 'curs', 6, '2019-05-01 13:12:00'),
(6, 14, 13, 3, 'curs', 5, '2019-04-05 14:00:00'),
(7, 14, 13, 1, 'curs', 4, '2019-03-01 15:01:00'),
(8, 14, 13, 2, 'curs', 5, '2019-02-03 10:02:00'),
(9, 14, 13, 3, 'curs', 6, '2019-01-01 8:12:00'),
(10, 14, 13, 1, 'curs', 7, '2019-11-01 10:12:00'),

(1, 15, 14, 1, 'examen', 5, '2019-03-01 10:00:00'),


(2, 15, 14, 2, 'examen', 7, '2019-03-01 11:01:00'),
(3, 16, 14, 3, 'examen', 2, '2019-03-01 12:02:00'),
(4, 15, 14, 1, 'examen', 4, '2019-03-01 13:12:00'),
(5, 15, 14, 2, 'examen', 10, '2019-03-01 14:12:00'),
(6, 16, 14, 3, 'examen', 15, '2019-03-01 15:00:00'),
(7, 15, 14, 1, 'examen', 8, '2019-03-02 10:01:00'),
(8, 15, 14, 2, 'examen', 9, '2019-03-02 10:02:00'),
(9, 15, 14, 3, 'examen', 7, '2019-03-02 10:12:00'),
(10, 15, 14, 1, 'examen', 5, '2019-04-02 10:12:00'),

(1, 17, 14, 1, 'examen', 5, '2019-03-01 10:00:00'),


(2, 18, 14, 2, 'examen', 7, '2019-03-01 11:01:00'),
(3, 18, 14, 3, 'examen', 2, '2019-03-01 12:02:00'),
(4, 17, 14, 1, 'examen', 4, '2019-03-01 13:12:00'),
(5, 18, 14, 2, 'examen', 10, '2019-03-01 14:12:00'),
(6, 18, 14, 3, 'examen', 15, '2019-03-01 15:00:00'),
(7, 17, 14, 1, 'examen', 8, '2019-03-02 10:01:00'),
(8, 18, 14, 2, 'examen', 9, '2019-03-02 10:02:00'),
(9, 18, 14, 3, 'examen', 7, '2019-03-02 10:12:00'),
(10, 17, 14, 1, 'examen', 5, '2019-04-02 10:12:00'),

(1, 19, 14, 1, 'curs', 10, '2019-04-01 10:00:00'),


(2, 20, 15, 2, 'curs', 9, '2019-04-01 9:01:00'),
(3, 19, 14, 3, 'curs', 8, '2019-04-04 11:02:00'),
(4, 19, 14, 1, 'curs', 7, '2019-04-01 12:12:00'),
(5, 20, 15, 2, 'curs', 6, '2019-04-01 13:12:00'),
(6, 19, 14, 3, 'curs', 5, '2019-04-05 14:00:00'),
(7, 19, 15, 1, 'curs', 4, '2019-04-01 15:01:00'),
(8, 20, 15, 2, 'curs', 5, '2019-04-03 10:02:00'),
(9, 19, 14, 3, 'curs', 6, '2019-04-01 8:12:00'),
(10, 19, 14, 1, 'curs', 7, '2019-04-01 10:12:00'),
(1, 21, 15, 1, 'examen', 5, '2019-10-06 10:00:00'),
(2, 21, 15, 2, 'examen', 6, '2019-10-06 11:01:00'),
(3, 21, 14, 3, 'examen', 7, '2019-10-06 12:02:00'),
(4, 21, 15, 1, 'examen', 8, '2019-10-06 13:12:00'),
(5, 21, 15, 2, 'examen', 9, '2019-10-06 14:12:00'),
(6, 21, 14, 3, 'examen', 10, '2019-10-06 15:00:00'),
(7, 21, 15, 1, 'examen', 4, '2019-10-06 10:01:00'),
(8, 21, 15, 2, 'examen', 5, '2019-10-06 10:02:00'),
(9, 21, 14, 3, 'examen', 6, '2019-10-06 10:12:00'),
(10, 21, 15, 1, 'examen', 9, '2019-10-06 10:12:00');

/
*----------------------------------------------------------------------------------
--------*/
/*---1----*/
SELECT * FROM discipline
WHERE orePlan = 80 and idDisciplina > 5

/*---2----*/
SELECT idDisciplina, nume FROM Discipline
WHERE nume LIKE 'S%' ORDER BY idDisciplina DESC;

/*---3----*/
SELECT top(3) idDisciplina, nume, orePlan
FROM Discipline
ORDER BY orePlan ASC;

/*---4----*/
SELECT TOP 3 WITH TIES idDisciplina, nume, orePlan
FROM Discipline
ORDER BY orePlan ASC;

/*---5----*/
SELECT DISTINCT P.idProfesor AS IdProfesorP, R.idProfesor AS IdProfesorR, P.nume AS
NumeProfesor,
P.prenume AS PrenumeProfesor, R.idDisciplina AS
IdDisciplina, R.idGrupa AS IdGrupa
FROM Profesori AS P inner join Reusita AS R ON P.idProfesor = R.idProfesor
WHERE R.idGrupa = 1

/*---6----*/
SELECT DISTINCT P.idProfesor AS IdProfesorP, R.idProfesor AS IdProfesorR, P.nume AS
NumeProfesor,
P.prenume AS PrenumeProfesor, R.idDisciplina AS
IdDisciplina, R.idGrupa AS IdGrupa
FROM Profesori AS P full join Reusita AS R ON P.idProfesor = R.idProfesor
WHERE R.idGrupa = 1
ORDER BY P.idProfesor ASC;

/*---7----*/
SELECT DISTINCT D.nume AS 'Disciplina', P.nume AS 'NumeProfesor', P.prenume AS
'PrenumeProfesor'
FROM Discipline D cross join Profesori P
WHERE D.nume Like 'Practica%' and P.prenume Like 'A%'
ORDER BY P.nume;

/*---8----*/
SELECT idDisciplina, UPPER(nume)
FROM Discipline
/*---9----*/
SELECT idDisciplina, UPPER(nume) AS 'Nume Majuscule'
FROM Discipline

/*---10----*/
SELECT
AVG(orePlan) AS Media,
MAX(orePlan) AS Maximum,
MIN(orePlan) AS Minimum,
COUNT(orePlan) AS TotalDiscipline,
SUM(orePlan) AS Totalore
FROM Discipline

/*---11----*/
SELECT
P.nume AS NumeProfesor, P.prenume AS PrenumeProfesor,
AVG(D.orePlan) AS Media,
MAX(D.orePlan) AS Maximum,
MIN(D.orePlan) AS Minimum,
COUNT(D.orePlan) AS TotalDiscipline,
SUM(D.orePlan) AS Totalore
FROM Discipline D
join Reusita R ON D.idDisciplina = R.idDisciplina
join Profesori P ON R.idProfesor = P.idProfesor
Group BY P.nume, P.prenume ORDER BY NumeProfesor

/*---12----*/
SELECT G.cod AS Grupa, SUM(nota) AS Puncte
FROM Reusita R join Grupe G ON R.idGrupa = G.idGrupa
WHERE tip = 'examen'
GROUP BY g.cod
ORDER BY Puncte

/*---13----*/
SELECT G.cod AS Grupa, SUM(nota) AS Puncte
FROM Reusita R join Grupe G ON R.idGrupa = G.idGrupa
WHERE tip = 'examen'
GROUP BY g.cod having SUM(nota) > 240
ORDER BY Puncte

/*---14----*/
SELECT * FROM Discipline
WHERE orePlan = (SELECT MAX(orePlan) FROM Discipline)

/*---15----*/
SELECT idProfesor, nume, prenume FROM Profesori
WHERE idProfesor Not In
(SELECT DISTINCT idProfesor FROM Reusita
WHERE idGrupa in
(SELECT idGrupa FROM Grupe WHERE cod = 'ti171'))

/*---16----*/
SELECT idProfesor, nume, prenume FROM Profesori
WHERE not idProfesor = any
(SELECT DISTINCT idProfesor
FROM Reusita R join Grupe G ON R.idGrupa = G.idGrupa
WHERE cod = 'ti171');

/*---17----*/
SELECT idProfesor, nume, prenume FROM Profesori
WHERE idProfesor > ALL
(SELECT DISTINCT idProfesor
FROM Reusita R join Grupe G ON R.idGrupa = G.idGrupa
WHERE cod = 'ti171');

/*---18----*/
SELECT nume, prenume
FROM Profesori AS P WHERE exists
(SELECT * FROM Reusita WHERE idGrupa =
(SELECT idGrupa FROM Grupe WHERE cod = 'ti171')
and idProfesor = P.idProfesor);

S-ar putea să vă placă și