Professional Documents
Culture Documents
T SQL
T SQL
T SQL
--VD4 in số tc nhỏ nhất, lớn nhất của các môn học trong bảng Monhoc
USE QLSV206
DECLARE @Minsotc tinyINT, @Maxsotc tinyINT
SELECT @Minsotc=MIN(Sotc), @MaXsotc=MAX(Sotc)
FROM monhoc
PRINT N'Số tín chỉ thấp nhất là : '
PRINT @MinSotc
PRINT N'Số tín chỉ cao nhất là : ' + CONVERT(CHAR(2), @Maxsotc)
go
SELECT * FROM MONHOC
print 6+10
print 6-10
print 20/10
print 20%10
--C1
SELECT *
FROM MONHOC
WHERE SOTC >=ALL (SELECT SOTC FROM MONHOC )
---c2
SELECT *
FROM MONHOC
WHERE SOTC =(SELECT MAX(SOTC) FROM MONHOC )
--C3
SELECT TOP 1 WITH TIES *
FROM MONHOC
ORDER BY SOTC DESC
SELECT *
FROM MONHOC
WHERE SOTC <=ALL (SELECT SOTC FROM MONHOC )
--vd8'Hiển thị thông tin của các sinh viên đã học các môn có sotc>=4--
--DISTINCT
SELECT DISTINCT s.*
FROM SINHVIEN s inner Join bangdiem d ON S.Masv =d.Masv
inner join MONHOC m ON m.MaMH =d.MaMH
WHERE m.SoTC >= 4
---C2
SELECT s.Masv, s.Hoten, s.Ngaysinh, s.Gioitinh, s.Quequan
FROM SINHVIEN s
WHERE masv IN (SELECT Masv FROM BANGDIEM
WHERE MAMH IN
(SELECT MAMH FROM
MONHOC
WHERE SoTC >= 4 ))
--vd8'' Hiển thị thông tin về các lớp có sinh viên quê ở Hưng Yên
--c1
SELECT distinct l.Makhoa, l.Malop, l.Tenlop, l.GVCN
FROM LOP l inner join SINHVIEN s ON l.Malop = s.Malop
WHERE s.QueQuan = N'Hưng Yên'
--C2
SELECT l.Makhoa, l.Malop, l.Tenlop, l.GVCN
FROM LOP L
WHERE MALOP IN (SELECT malop
FROM SINHVIEN S
WHERE
S.Quequan=N'Hưng Yên')
--vd8b: hiển thị thông tin của các sv gồm: Masv, hoten, diemtbl1
--thuộc kì 1 của các sv: diemtbl1=sum(dieml1*sotc)/sum (sotc)
--
BEGIN TRY
SELECT 10/0;
END TRY
BEGIN CATCH
RAISERROR (N'lỗi chia cho 0', 16, 1)
--PRINT N'lỗi chia cho 0'
--THROW 51000, 'Lỗi chia cho 0', 1
END CATCH;
--
USE tempdb;
GO
DELETE FROM dbo.TestRethrow
CREATE TABLE dbo.TestRethrow
( ID INT PRIMARY KEY
);
BEGIN TRY
INSERT dbo.TestRethrow(ID) VALUES(1)
---ERROR
INSERT dbo.TestRethrow(ID) VALUES(1)
END TRY
BEGIN CATCH
-- SELECT ERROR_NUMBER() AS ErrorNumber,
-- ERROR_SEVERITY() AS ErrorSeverity,
-- ERROR_MESSAGE() AS ErrorMessage
-- PRINT 'In catch block.';
THROW 51000, 'The record does not exist.', 1
-- THROW;
END CATCH