0% found this document useful (0 votes)
4 views1 page

1203 Nguyenquochuy bt07

Uploaded by

huylamotconbo539
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views1 page

1203 Nguyenquochuy bt07

Uploaded by

huylamotconbo539
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 1

Nguyễn Minh Hoàng

2280601049
22DTHE1 5 câu procedure
-Câu 1: CREATE PROCEDURE P1 AS BEGIN SELECT HD.MAHD, HD.NGAY, KH.TENKH,
SUM(CTHD.SOLUONG * VT.GIABAN) AS TONGTG FROM HOADON HD JOIN CHITIETHOADON
CTHD ON HD.MAHD = CTHD.MAHD JOIN KHACHHANG KH ON HD.MAKH = KH.MAKH JOIN
VATTU VT ON CTHD.MAVT = VT.MAVT GROUP BY HD.MAHD, HD.NGAY, KH.TENKH; END; -
Câu 2: CREATE PROCEDURE P2 (@MaHD INT) AS BEGIN DELETE FROM CHITIETHOADON
WHERE MAHD = @MaHD; END;
-Câu 3: CREATE PROCEDURE P3 (@Nam INT, @TongDoanhThu DECIMAL(18,2) OUTPUT) AS
BEGIN SELECT @TongDoanhThu = SUM(CTHD.SOLUONG * VT.GIABAN) FROM HOADON HD
JOIN CHITIETHOADON CTHD ON HD.MAHD = CTHD.MAHD JOIN VATTU VT ON CTHD.MAVT =
VT.MAVT WHERE YEAR(HD.NGAY) = @Nam; END;
-Câu 4: CREATE PROCEDURE P4 (@Thang INT, @Nam INT, @DoanhThu DECIMAL(18,2)
OUTPUT) AS BEGIN SELECT @DoanhThu = SUM(CTHD.SOLUONG * VT.GIABAN) FROM
HOADON HD JOIN CHITIETHOADON CTHD ON HD.MAHD = CTHD.MAHD JOIN VATTU VT ON
CTHD.MAVT = VT.MAVT WHERE MONTH(HD.NGAY) = @Thang AND YEAR(HD.NGAY) =
@Nam; END;
-Câu 5: SELECT TOP 1 MAVT, TENVT, (SUM(CTHD.SOLUONG * VT.GIABAN) -
SUM(CTHD.SOLUONG * VT.GIAMUA)) AS Lai FROM CHITIETHOADON CTHD JOIN VATTU VT
ON CTHD.MAVT = VT.MAVT GROUP BY MAVT, TENVT ORDER BY Lai ASC; 2 câu function -Câu
1: CREATE FUNCTION f1 (@So INT) RETURNS NVARCHAR(10) AS BEGIN DECLARE @KetQua
NVARCHAR(10); IF @So % 2 = 0 SET @KetQua = 'Chẵn'; ELSE SET @KetQua = 'Lẻ'; RETURN
@KetQua; END; -Câu 2: CREATE FUNCTION f2 (@n INT) RETURNS BIGINT AS BEGIN DECLARE
@KetQua BIGINT; DECLARE @i INT; SET @KetQua = 1; SET @i = 1; WHILE @i <= @n BEGIN
SET @KetQua = @KetQua * @i; SET @i = @i + 1; END RETURN @KetQua; END;

You might also like