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

1 So Cau Bai5

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

1 So Cau Bai5

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

--Tạo thủ tục hiển thị thông tin của các PHONG (MAPH, TENPH, DT, GIAPHONG) có nhiều

khách hàng thuê nhất


SELECT THUEPHONG.MAPH,TENPH,DT,GIAPHONG FROM PHONG,THUEPHONG
WHERE PHONG.MAPH=THUEPHONG.MAPH
GROUP BY THUEPHONG.MAPH,TENPH,DT,GIAPHONG
HAVING COUNT(*)>=ALL(SELECT COUNT(*) FROM THUEPHONG GROUP BY MAPH)
----Tạo Trigger tự động cập nhật thành tiền (THANHTIEN) mỗi khi thêm dữ liệu vào
bảng THUEPHONG cho biết THANHTIEN=GIAPHONG*SONGAY.
CREATE TRIGGER CN_TIEN ON THUEPHONG
FOR UPDATE,INSERT
AS
DECLARE @MAPH CHAR(10)=(SELECT MAPH FROM inserted)
DECLARE @GIAPHONG FLOAT=(SELECT GIAPHONG FROM PHONG WHERE MAPH=@MAPH)
UPDATE THUEPHONG
SET THANHTIEN=@GIAPHONG*DATEDIFF(DAY,NGBD,NGKT)
--15) Tạo View hiển thị tên khách hàng(TENKH) và số lượng phòng mà các khách hàng
đó thuê.
CREATE VIEW VW_TENKH
AS
SELECT TENKH,COUNT(*) AS SOUONGPHONGTHUE
FROM KHACHHANG,THUEPHONG WHERE THUEPHONG.MAKH=KHACHHANG.MAKH
GROUP BY TENKH
GO
SELECT * FROM VW_TENKH
--SELECT PHONG.MAPH,TENPH,DT FROM PHONG,THUEPHONG
WHERE PHONG.MAPH=THUEPHONG.MAPH AND DATEDIFF(DAY,NGBD,NGKT)=7
----19) Tạo thủ tục xóa các PHONG chưa được thuê bao giờ
CREATE PROC SP_XOAPHONG
AS
DELETE FROM PHONG
WHERE MAPH NOT IN (SELECT MAPH FROM THUEPHONG)
GO
EXEC SP_XOAPHONG

You might also like