You are on page 1of 15

Phm Vn Hng MSSV: 12520162 Lp: IT004.

E14 Create Table NHANVIEN ( MANV char(4) Primary Key, HOTEN varchar(40) Not Null, SODT vachar(20), NGVL smalldetetime ) Create table KHACHHANG ( MAKH char(4) Primary Key, HOTEN varchar(40) Not Null, DCHI varchar(50) Not Null, SODT varchar(20), NGSINH smalldatetime, DOANHSO money, NGDK smalldatetime ) Create table SANPHAM ( MASP char(4) Primary Key, TENSP carchar(40 Not Null, DVT varchar(20), NUOCSX varchar(40), GIA money ) Create table HOADON ( SOHD int Primary Key, NGHD smalldatetime, MAKH char(4),

MANV char(4), TRIGIA money ) Create table CTHD ( SOHD int, MASP char(4), SL int, Constraint PK_CTHD Primary Key (SOHD, MASP) ) ---------- NGN NG NH NGHA D LIU (Data Definition Langguage) ---------Cu 1: HOADON: Alter table HOADON Add Constraint FK01_HOADON Foreign Key (MAKH) References KHACHHANG(MAKH); Alter table HOADON Add Constraint FK02_HOADON Foreign Key (MANV) References NHANVIEN(MANV); CTHD: Alter table CTHD Add Contraint FK01_CTHD Foreign Key (SOHD) References HOADON (SOHD); Alter table CTHD Add Constraint FK02_CTHD Foreign Key (MASP) References SANPHAM (MASP); Cu 2: Alter Table SANPHAM Add GHICHU vachar(20); SP_columns SANPHAM; Cu 3: Alter table KHACHHANG Add LOAIKH tinyint; SP_columns KHACHHANG;

Cu 4: Alter table SANPHAM Alter column GHICHU varchar(100); SP_columns SANPHAM; Cu 5: Alter table SANPHAM drop column GHICHU; SP_columns SANPHAM; Cu 6: Alter table KHACHHANG Alter column LOAIKH varchar(50); Alter table KHACHHANG Add Constraint CK_LOAIKH Check (LOAIKH in (Vang Lai,Thuong Xuyen,Vip)); Alter table KHACHHANG Drop column LOAIKH; SP_columns KHACHHANG; Cu 7: Alter table SANPHAM Add Constraint CK_DVT (DVT in (cay,hop,cai,quyen,chuc)); Cu 8: Alter table SANPHAM add Constraint CK_GIA Check (GIA>=500); Cu 9: To TRIGGER trn table CTHD: CREATE TRIGGER SOLUONG_CTHD ON CTHD FOR INSERT, UPDATE AS Declare @sl int Select @sl=SL From Inserted IF @sl<1 Begin Rollback TRAN print(So luong san pham lon hon hoac bang 1) End

--- NGN NG THAO TC D LIU (Data Manipulation Langguage) --Cu 1: Set dateformat dmy; --- Nhp d liu Cho Quan H NHANVIEN --Insert into NHANVIEN values (NV01,Nguyen Nhu Nhut,0927345678,13/8/2009); Insert into NHANVIEN values (NV01,Le Hai Yen,0987567390,2/4/2009); Insert into NHANVIEN values (NV01,Phan Van Manh,0997047382,22/11/2009); Insert into NHANVIEN values (NV01,Tran Minh Hoang,0918590387,20/6/2009); Select * From NHANVIEN --- Nhp d liu cho Quan H KHACHHANG --Insert into KHACHHANG values (KH01,Nguyen Van A,731 Tran Hung Dao, Q5, TpHCM,08823451,22/10/1960,13060000,22/07/2006); Insert into KHACHHANG values (KH02,Trang Ngoc Han,13/5 Nguyen Trai, Q5, TpHCM,0908256478,04/03/1974,280000,30/07/2006); Insert into KHACHHANG values (KH03,Tran Ngoc Linh,45 Nguyen Canh Chan, Q1, TpHCM,0938776266,22/10/1960,13060000,08/05/2006); Insert into KHACHHANG values (KH04,Tran Minh Long,50/34 Le Dai Hanh, Q10, TpHCM,917326476,22/10/1960,13060000,10/02/2006); Insert into KHACHHANG values (KH05,Le Nhat Minh,34 Truong Dinh, Q3, TpHCM,08246108,22/10/1960,13060000,28/10/2006); Insert into KHACHHANG values (KH06,Le Hoai Thuong,227 Nguyen Van Cu, Q5, TpHCM,08631738,22/10/1960,13060000,24/11/2006);

Insert into KHACHHANG values (KH07,Nguyen Van Tam,32/3 Tran Binh Trong, Q5, TpHCM,091683565,22/10/1960,13060000,12/01/2006); Insert into KHACHHANG values (KH08,Phan Thi Thanh,45/2 An Duong Vuong, Q5, TpHCM,0938435756,22/10/1960,13060000,13/12/2006); Insert into KHACHHANG values (KH09,Le Ha Vinh,873 Le Hong Phong, Q5, TpHCM,08654763,22/10/1960,13060000,14/01/2006); Insert into KHACHHANG values (KH10, Ha Duy Lap,34/34B Nguyen Train, Q1, TpHCM,08768904,22/10/1960,13060000,16/01/2007); Insert into KHACHHANG values (KH11, Nguyen Van Thieu,20/56 To 10, Khu Pho 6, Linh Trung, Thu Duc TpHCM,0977231048,18/02/1990,999999999,30/08/2008); Select * From KHACHHANG ---------- Nhp d liu cho Quan H SANPHAM ---------Insert into SANPHAM values (BC01,But Chi,Cay,Singapore,3000); Insert into SANPHAM values (BC02,But Chi,Cay,Singapore,5000); Insert into SANPHAM values (BC03,But Chi,Cay,Viet Nam,3500); Insert into SANPHAM values (BC04,But Chi,Hop,Viet Nam,30000); Insert into SANPHAM values (BC05,But Bi,Cay,Viet Nam,5000); Insert into SANPHAM values (BC06,But Bi,Cay,Trung Quoc,7000); Insert into SANPHAM values (BC07,But Bi,Hop,Thai Lan,100000); Insert into SANPHAM values (TV01,Tap 100 giay mong,quyen, Trung Quoc,2500); Insert into SANPHAM values (TV02,Tap 200 giay mong,quyen, Trung Quoc,4500); Insert into SANPHAM values (TV03,Tap 100 giay tot,quyen, Viet Nam,3000); Insert into SANPHAM values (TV04,Tap 200 giay tot,quyen, Viet Nam,5500);

Insert into SANPHAM values (TV05,Tap 100 giay,chuc, Viet Nam,23000); Insert into SANPHAM values (TV06,Tap 200 trang,chuc, Viet Nam,53000); Insert into SANPHAM values (TV07,Tap 100 trang,chuc, Trung Quoc,34000); Insert into SANPHAM values (ST01,So tay 500 trang,quyen, Trung Quoc,40000); Insert into SANPHAM values (ST02,So tay loai 1,quyen, Viet Nam,55000); Insert into SANPHAM values (ST03,So tay loai 2,quyen, Viet Nam,2500); Insert into SANPHAM values (ST04,So tay,quyen, Thai Lan,51000); Insert into SANPHAM values (ST05,So tay mong,quyen, Thai Lan,20000); Insert into SANPHAM values (ST06,Phan Viet Bang,hop, Viet Nam,5000); Insert into SANPHAM values (ST07,Phan khong bui,hop, Viet Nam,7000); Insert into SANPHAM values (ST08,Bong bang,cai, Viet Nam,1000); Insert into SANPHAM values (ST09,But long,cay, Viet Nam,5000); Insert into SANPHAM values (ST10,But long,cay, Trung Quoc,7000); Insert into SANPHAM values (ST11,But bi,cay, Singapore,3000); Select * From SANPHAM --- Nhp d liu cho HOADON --Inser into HOADON values (1001,23/07/2006,KH01,NV01,320000); Inser into HOADON values (1002,12/08/2006,KH01,NV02,840000); Inser into HOADON values (1003,23/08/2006,KH02,NV01,100000);

Inser into HOADON values (1004,01/09/2006,KH02,NV01,180000); Inser into HOADON values (1005,20//10/2006,KH01,NV02,380000); Inser into HOADON values (1006,16/10/2006,KH01,NV03,2430000); Inser into HOADON values (1007,28/10/2006,KH03,NV03,510000); Inser into HOADON values (1008,28/10/2006,KH01,NV03,40000); Inser into HOADON values (1009,28/10/2006,KH03,NV04,200000); Inser into HOADON values (1010,01/11/2006,KH01,NV01,5200000); Inser into HOADON values (1011,04/11/2006,KH04,NV03,250000); Inser into HOADON values (1012,30/11/2006,KH05,NV03,21000); Inser into HOADON values (1013,12/122006,KH06,NV01,5000); Inser into HOADON values (1014,31/12/2006,KH03,NV02,3150000); Inser into HOADON values (1015,01/01/2007,KH06,NV01,910000); Inser into HOADON values (1016,01/01/2007,KH07,NV02,12500); Inser into HOADON values (1017,02/01/2007,KH08,NV03,35000); Inser into HOADON values (1018,13/01/2007,KH08,NV03,330000); Inser into HOADON values (1019,13/01/2007,KH01,NV03,30000); Inser into HOADON values (1020,14/01/2007,KH09,NV04,70000); Inser into HOADON values (1021,16/01/2007,KH10,NV03,67500); Inser into HOADON values (1022,16/01/2007,Null,NV03,7000); Inser into HOADON values (1023,17/01/2007,Null,NV01,330000); Select * From HOADON --- Nhp d liu cho Quan H CTHD --Insert into CYHD values (1001,TV02,10); Insert into CYHD values (1001,ST01,10); Insert into CYHD values (1002,BC01,20); Insert into CYHD values (1002,BC02,20); Insert into CYHD values (1002,ST08,20); Insert into CYHD values (1003,BC04,10); Insert into CYHD values (1004,BB01,20); Insert into CYHD values (1004,BB02,10);

Insert into CYHD values (1004,BB03,10); Insert into CYHD values (1004,TV01,10); Insert into CYHD values (1005,TV02,50); Insert into CYHD values (1005,TV03,50); Insert into CYHD values (1006,TV04,20); Insert into CYHD values (1006,TV05,30); Insert into CYHD values (1006,TV06,10); Insert into CYHD values (1007,TV07,10); Insert into CYHD values (1008,ST01,8); Insert into CYHD values (1009,ST02,10); Insert into CYHD values (1010,ST03,50); Insert into CYHD values (1010,ST04,50); Insert into CYHD values (1010,ST05,10); Insert into CYHD values (1010,TV07,50); Insert into CYHD values (1010,ST07,100); Insert into CYHD values (1011,ST08,50); Insert into CYHD values (1012,ST04,3); Insert into CYHD values (1013,TV03,5); Insert into CYHD values (1014,ST06,80); Insert into CYHD values (1014,ST07,100); Insert into CYHD values (1014,ST08,60); Insert into CYHD values (1014,BC02,50); Insert into CYHD values (1015,BB02,30); Insert into CYHD values (1015,BC04,7); Insert into CYHD values (1016,TV01,5); Insert into CYHD values (1017,TV02,1); Select * From CTHD ---------- NGN NG TRUY VN D LIU (SQL) ---------Cu 1: Select MASP, TENSP From SANPHAM Where NUOCSX=Trung Quoc

Cu 2: Select MASP, TENSP From SANPHAM Where DVT in (cay,quyen) Cu 3: Select MASP, TENSP From SANPHAM Where MASP Like B%01 Cu 4: Select MASP, TENSP From SANPHAM Where NUOCSX=Trung Quoc and GTA between 30000 and 40000 Cu 5: Select MASP, TENSP From SANPHAM Where NUOCSX in (Trung Quoc,Thai Lan) and GTA between 30000 and 40000; Cu 6: Select SOHD, TRIGIA From HOADON Where NGHD=1/1/2007 And NGHD=2/1/2007; Cu 7: Select SOHD, TRIGIA From HOADON Where MONTH (NGHD)=1 And YEAR(NGHD)=2007 Order by NGHD ASC, TRIGIA DESC; Cu 8: Select A.MAKH, HOTEN From KHACHHANG A, HOADON B Where NGHD=1/1/2007 And B.MAKH=A.MAKH;

Cu 9: Select SOHD, TRIGIA From HOADON inner join NHANVIEN on HOADON.MANV=NHANVIEN.MANV Where NGHD=28/10/2006 And NHNAVIEN.HOTEN=Nguyen Van B; Cu 10: Select D.MASP, TENSP From SANPHAM A, KHACHHANG B, HOADON C, CTHD D Where HOEN=Nguyen Van A And B.MAKH=C?MAKH And C.SOHD=D.SOHD And D.MASP=A.MASP And month(NGHD)=10 And Year(NGHD)=2006; Cu 11: Select Distrinct SOHD From CTHD Where MASP in (BB01,BB02); Cu 12: Select Distinct SOHD From CTHD Where MASP in (BB01,BB02) And SL between 10 and 20; Cu 13: Select Distinct SOHD From CTHD Where MASP=BB01 And SL between 10 and 20 And SOHD in (Select Distinct SOHD From CTHD Where MASp=BB02 And SL Between 10 and 20 ); Cu 14: Select MASP, TENSP From SANPHAM Where NUOCSX=Trung Quoc Union Select C.MASP, TENSP From SANPHAM A, HOADON B, CTHD C Where A.MASP=C/MASP And C/SOHD=B.SOHD And NGHD=1/1/2007

Cu 15: Select MASP, TENSP From SANPHAM Where MASP Not In (Select MASP From CTHD); Cu 16: Select MASP, TENSP From SANPHAM Where MASP Not In (Select MASP From CTHD inner join OADON on CTHD.SOHD=HOADON.SOHD Where Year (NGHD)=2006); Cu 17: Seelect MASP, TENSP From SANPHAM Wher NUOCSX=Trung Quoc And MASP Not In (Select MASP From HOADON B, CTHD C Where B.SOHD=C.SOHD And Tear(NGHD)=2006); Cu 18: Select SOHD From HOADON Where Not Exists ( Select * From SANPHAM Where NUOCSC=Singapore and Not Exists ( Select * From CTHD where HOADON.SOHD=CTHD.SOHD And CTHD.MASP=SANPHAM.MASP ) ) Cu 20: Select Count(SOHD) From HOADON Where MAKH is Null; Cu 21: Select Count (Distinct MASP) From HOADON A, CTHD B

Where B.SOHD=A.SOHD And Year(NGHD)=2006; Cu 22: Select Max(TRIGIA) AS Tr Gi Ha n Cao Nht, Min(TRIGIA) AS Tri Gi Ha n Thp Nht From HOADON; Cu 23: Select AVG(TRIGIA) AS Tr Gi Trung Bnh From HOADON Where Year(NGHD)=2006; Cu 24: Select Sum(TRIGIA) As Doanh thu bn hng nm 2006 From HOADON Where Year(NGHD)=2006; Cu 25: Select SOHD AS Ha n co tr gi cao nht nm 2006 From HOADON Where Year(NGHD)=2006 And TRIGIA=( Select Max(TRIGIA) From HOADON Where Year(NGHD)=2006; Cu 26: Select HOTEN AS Khch hnh mua HD tr gi Max From KHACHHANG A, HOADON B Where A.MAKH=B.MAKH Year(NGHD)=2006 And TRIGIA=(Select Max(TRIGIA) From HOADON Where Yea(NGHD)=2006); Cu 27: Select Top 3 MAKH, HOTEN From HACHHANG Order By DOANHSO DESC; Cu 28: Sleect MASP, TENSP

From SANPHAM Where GTA in (Select Top 3 GTA From SANPHAM Order By GIA DESC); Cu 29: Select MASP, TENSP From SANPHAM Where NUOCSX=Thai Lan And GIA in (Select Top 3 Gia From SANPHAM Order by GIA SESC); Cu 30: Select MASP. TENSP From SANPHAM Where NUOCSX=Trung Quoc And GIA in (Select Top 3 GIA From SANPHAM Where NUOCSX=Trung Quoc Order By GIA DESC); Cu 31: Select Top 3 * From KHACHHANG Order By DOANHSO DESC Cu 32: Select Count(MASP) AS Tng s sn phm do TQ sn xut From SANPHAM Where NUOCSX=Trung Quoc; Cu 33: Select NUOCSX AS Nc sn xut, Count(MASP) AS Tng s sn phm From SANPHAM Group By NUOCSX; Cu 34: Select NUOCSX AS Nc sn xut, Max(GIA) AS Gi bn cao nht. Min(GIA) AS Gi bn thp nht, AVG(GIA) AS Gi trung bnh From SANPHAM Group By NGHD;

Cu 35: Select NGHD AS Ngy, Sum(TRIGIA) AS Doanh Thu From HOADON Group By NGHD; Cu 36: Select TENSP AS Tn sn phm, Sum(SL) AS Tng s lng From SANPHAM A, HOADON B, CTHD C Here A.MASP=C.MASP An C.SOHD=B.SOHD And Month(NGHD)=10 And Year(NGHD)=2006 Group By TENSP; Cu 37: Select Month(NGHD) AS Thng, Sum(TRIAGIA) As Doang Thu From HOADON Where Year(NGHD)=2006 Group By Month(NGHD); Cu 38: Select SOHD From CTHD Group By SOHD Having Count(MASP)>=4; Cu 39: Select SOHD From CTHD, SANPHAM Where CTHD.MASP=SANPHAM.MASP And NUOCSX=Viet Nam Group By SOHD Having Count(SOHD)>=3; Cu 40: Select MAKH, HOTEN From KHACHHANG Where MAKH in (Select MAKH From HOADON Group By MAKH Having Count (MAKH)>=All(Select Count(MAKH) From HOADON Group By MAKH))

Cu 41: Select Month(NGHD) AS Thng From HOADON Where Year(NGHD)=2006 Group By Month(NGHD) Having Sum(TRIGIA)>=A;;(Select Sum(TRIGIA) From HOADON Group By Month(NGHD)); Cu 44: Select NUOCSX From SANPHAM Group By NUOCSX Having Count(Distinct(GIA))>=3; Cu 45: Select * From KHACHHANG Where MAKH in (Select Top 10 MAKH From KHACHHANG Order By DOANHSO DESC) And MAKH in (Select MAKH From HOADON Group By MAKH Having Count(MAKH)>=All(Select Count(MAKH) From HOADON Group By MAKH));

You might also like