Documente Academic
Documente Profesional
Documente Cultură
RAPORT
Lucrare de laborator Nr.5
Disciplina: BD
Tema: Transact- SQL. Instrucțiuni procedurale
A verificat : asist.univ.
Scrob Sergiu
Chișinău 2021
Sarcina 1: Completați următorul cod pentru a afița cel mai mare număr dintre cele trei numere
prezentate:
if (@n1 > @n2 and @n1 > @n3) set @greatest = @n1
else if (@n2 > @n1 and @n2 > @n3) set @greatest = @n2
else if (@n3 > @n1 and @n3 > @n2) set @greatest = @n3
else print 'The numbers are equal'
print @n1;
print @n2;
print @n3;
print 'The greatest = ' + cast(@greatest as varchar(2));
Sarcina 2: Afișati primele zece date (numele, prenumele studentului) in functie de valoarea
notei (cu exceptia notelor 6 și 8) a studentului la primul test al disciplinei Baze de date , folosind
structura de altemativa IF. .. ELSE. Să se foloseasca variabilele.
use universitatea
declare @test_name nvarchar(50), @name_disciplina nvarchar(50);
set @test_name = 'Testul 1';
set @name_disciplina = 'Baze de date';
IF EXISTS
(SELECT * FROM studenti s JOIN studenti_reusita sr ON s.Id_Student = sr.Id_Student
JOIN discipline d ON sr.Id_Disciplina = d.Id_Disciplina
WHERE (Nota != 6 OR Nota != 8) AND Tip_Evaluare = @test_name
AND Disciplina = @name_disciplina)
BEGIN
(SELECT TOP (10) Nume_Student, Prenume_Student, Nota FROM studenti s JOIN
studenti_reusita sr ON s.Id_Student = sr.Id_Student
JOIN discipline d ON sr.Id_Disciplina = d.Id_Disciplina
WHERE (Nota != 6 OR Nota != 8) AND Tip_Evaluare = @test_name
AND Disciplina = @name_disciplina)
ORDER BY Nota asc
END
Sarcina 3: Rezolvați aceeași sarcina, 1, apelând la structura selectivă CASE.
declare @n1 int, @n2 int, @n3 int, @greatest int;
set @greatest = 0;
set @n1 = 60 * RAND();
set @n2 = 60 * RAND();
set @n3 = 60 * RAND();