You are on page 1of 12

1.

Hiển thị danh sách các khách hàng có địa chỉ là “Tân Bình” gồm mã khách hàng,
tên khách hàng, địa chỉ, điện thoại, và địa chỉ E-mail.
create view cau1
as
select* from KHACHHANG
where DIACHI like N'Tân bình'
select *from cau1

2. Hiển thị danh sách các khách hàng gồm các thông tin mã khách hàng, tên khách
hàng, địa chỉ và địa chỉ E-mail của những khách hàng chưa có số điện thoại
create view cau2
as
select MAKH, TENKH, DIACHI, EMAIL
from KHACHHANG
where DT is NULL
select *from cau2

3. Hiển thị danh sách các khách hàng chưa có số điện thoại và cũng chưa có địa
chỉ Email gồm mã khách hàng, tên khách hàng, địa chỉ.
create view cau3
as
select* from KHACHHANG
where DT is null and EMAIL is null
select *from cau3
4. Hiển thị danh sách các khách hàng đã có số điện thoại và địa chỉ E-mail gồm mã
khách hàng, tên khách hàng, địa chỉ, điện thoại, và địa chỉ E-mail.
create view cau4
as
select* from KHACHHANG
where DT is not null and EMAIL is not null
select *from cau4

5. Hiển thị danh sách các vật tư có đơn vị tính là “Cái” gồm mã vật tư, tên vật tư
và giá mua.
create view cau5
as
select MAVT, TENVT, GIAMUA
from VATTU
where DVT like N'Cái'
select *from cau5

6. Hiển thị danh sách các vật tư gồm mã vật tư, tên vật tư, đơn vị tính và giá mua
mà có giá mua trên 25000.
create view cau6
as
select MAVT,TENVT,DVT,GIAMUA
from VatTu
where GIAMUA > 25000
select *from cau6

7. Hiển thị danh sách các vật tư là “Gạch” (bao gồm các loại gạch) gồm mã vật tư,
tên vật tư, đơn vị tính và giá mua.
create view cau7
as
select MAVT,TENVT,DVT,GIAMUA
from VATTU
where TENVT like N'%Gạch%'
select *from cau7

8. Hiển thị danh sách các vật tư gồm mã vật tư, tên vật tư, đơn vị tính và giá mua
mà có giá mua nằm trong khoảng từ 20000 đến 40000.
create view cau8
as
select MAVT,TENVT,DVT,GIAMUA
from VATTU
where GIAMUA between 20000 and 40000
select *from cau8
9. Lấy ra các thông tin gồm Mã hóa đơn, ngày lập hóa đơn, tên khách hàng, địa chỉ
khách hàng và số điện thoại.
create view cau9
as
select HOADON.MAHD, NGAY,TENKH,DIACHI,DT
from KHACHHANG, HOADON
where KHACHHANG.MAKH= HOADON.MAKH
select *from cau9

10. Lấy ra các thông tin gồm Mã hóa đơn, tên khách hàng, địa chỉ khách hàng và
số điện thoại của ngày 25/5/2010.
create view cau10
as
select HOADON.MAHD, TENKH, DIACHI, DT
from HOADON, KHACHHANG
where HOADON.MAKH = KHACHHANG.MAKH and HOADON.NGAY = '5/25/2010'
11. Lấy ra các thông tin gồm Mã hóa đơn, ngày lập hóa đơn, tên khách hàng, địa
chỉ khách hàng và số điện thoại của những hóa đơn trong tháng 6/2010.
create view cau11
as
select HOADON.MAHD, NGAY, TENKH, DIACHI, DT
from HOADON,KHACHHANG
where HOADON.MAKH = KHACHHANG.MAKH and month(HOADON.NGAY) = '6' and
year(HOADON.NGAY) ='2010'
select *from cau11

12. Lấy ra danh sách những khách hàng (tên khách hàng, địa chỉ, số điện thoại) đã
mua hàng trong tháng 6/2010.
create view cau12
as
select TENKH, DIACHI, DT
from KHACHHANG, HOADON
where KHACHHANG.MAKH = HOADON.MAKH and MONTH(NGAY) = '6' and YEAR(NGAY) =
'2010'
select *from cau12

13. Lấy ra danh sách những khách hàng không mua hàng trong tháng 6/2010 gồm
các thông tin tên khách hàng, địa chỉ, số điện thoại.
create view cau13
as
select TENKH, DIACHI, DT
from KHACHHANG
where MAKH not in(select MAKH from HOADON
where MONTH(NGAY) ='6' and YEAR(NGAY) ='2010')
select *from cau13

14. Lấy ra các chi tiết hóa đơn gồm các thông tin mã hóa đơn, mã vật tư, tên vật
tư, đơn vị tính, giá bán, giá mua, số lượng, trị giá mua (giá mua * số lượng), trị giá
bán (giá bán * số lượng).
create view cau14
as
select MAHD, VATTU.MAVT,TENVT, DVT, GIABAN, GIAMUA, SL, (GIAMUA * SL) as
N'Trị giá mua', (GIABAN * SL) as N'Trị giá bán'
from VATTU ,CTHD
where CTHD.MAVT = VATTU.MAVT
select *from cau14
15. Lấy ra các chi tiết hóa đơn gồm các thông tin mã hóa đơn, mã vật tư, tên vật
tư, đơn vị tính, giá bán, giá mua, số lượng, trị giá mua (giá mua * số lượng), trị giá
bán (giá bán * số lượng) mà có giá bán lớn hơn hoặc bằng giá mua.
create view cau15
as
select CTHD.MAHD, VATTU.MAVT, TENVT, DVT, GIABAN, GIAMUA, SL, (GIAMUA*SL) as
N'Trị giá mua', (GIABAN*SL) as N'Trị giá bán'
from VATTU, CTHD
where VATTU.MAVT = CTHD.MAVT and GIABAN >= GIAMUA
select *from cau15

16. Lấy ra các thông tin gồm mã hóa đơn, mã vật tư, tên vật tư, đơn vị tính, giá
bán, giá mua, số lượng, trị giá mua (giá mua * số lượng), trị giá bán (giá bán * số
lượng) và cột khuyến mãi với khuyến mãi 10% cho những mặt hàng bán trong một
hóa đơn lớn hơn 100.
create view cau16
as
select MAHD, VatTu.MAVT, TENVT, DVT, GIABAN, GIAMUA, SL, (GiaMua*SL) as N'Trị
giá mua', (GiaBan*SL) as N'Trị giá bán', KHUYENMAI = case when (sl>100) then
0.1 else 0 end
from VATTU,CTHD
where VATTU.MAVT = CTHD.MAVT
select *from cau16
17. Tìm ra những mặt hàng chưa bán được.
create view cau17
as
select* from VATTU
where MAVT not in(select MAVT from CTHD)
select *from cau17

18. Tạo bảng tổng hợp gồm các thông tin: mã hóa đơn, ngày hóa đơn, tên khách
hàng, địa chỉ, số điện thoại, tên vật tư, đơn vị tính, giá mua, giá bán, số lượng, trị
giá mua, trị giá bán.
create view cau18
as
select HOADON.MAHD, NGAY, TENKH, DIACHI, DT, TENVT, DVT, GIAMUA, GIABAN, SL,
(GiaMua*SL) as N'Trị giá mua', (GiaBan*SL) as N'Trị giá bán'
from HOADON, KHACHHANG, CTHD, VATTU
where HOADON.MAKH = KHACHHANG.MAKH and HOADON.MAHD = CTHD.MAHD and CTHD.MAVT
= VATTU.MAVT
select *from cau18

19. Tạo bảng tổng hợp tháng 5/2010 gồm các thông tin: mã hóa đơn, ngày hóa
đơn, tên khách hàng, địa chỉ, số điện thoại, tên vật tư, đơn vị tính, giá mua, giá
bán, số lượng, trị giá mua, trị giá bán.
create view cau19
as
select HOADON.MAHD, NGAY, TENKH, DIACHI, DT, TENVT, DVT, GIAMUA, GIABAN, SL,
(GiaMua*SL) as N'Trị giá mua', (GiaBan*SL) as N'Trị giá bán'
from HOADON, KHACHHANG, CTHD, VATTU
where HOADON.MAKH = KHACHHANG.MAKH and HOADON.MAHD = CTHD.MAHD and CTHD.MAVT
= VATTU.MAVT and MONTH(HOADON.NGAY) = 5 and YEAR(NGAY) =2010
select *from cau19

20. Tạo bảng tổng hợp quý 1 – 2010 gồm các thông tin: mã hóa đơn, ngày hóa
đơn, tên khách hàng, địa chỉ, số điện thoại, tên vật tư, đơn vị tính, giá mua, giá
bán, số lượng, trị giá mua, trị giá bán.
create view cau20
as
select HOADON.MAHD, NGAY, TENKH, DIACHI, DT, TENVT, DVT, GIAMUA, GIABAN, SL,
(GiaMua*SL) as N'Trị giá mua', (GiaBan*SL) as N'Trị giá bán'
from HOADON, KHACHHANG, CTHD, VATTU
where HOADON.MAKH = KHACHHANG.MAKH and HOADON.MAHD = CTHD.MAHD and CTHD.MAVT
= VATTU.MAVT and YEAR(NGAY) = 2010 and (MONTH(NGAY) between 1 and 3)
select *from cau20

24. Đếm xem mỗi khách hàng có bao nhiêu hóa đơn.
create view cau24
as
select KHACHHANG.MAKH, TENKH, count(*) as N'Tổng số hóa đơn'
from KHACHHANG, HOADON
where KHACHHANG.MAKH = HOADON.MAKH
group by KHACHHANG.MAKH,TENKH
select *from cau24
26. Lấy ra các thông tin của khách hàng có số lượng hóa đơn mua hàng nhiều
nhất.
create view cau26
as
select KHACHHANG.MAKH,TENKH,count(*) as N'Số lượng hóa đơn'
from KHACHHANG, HOADON
where KHACHHANG.MAKH = HOADON.MAKH
group by KHACHHANG.MAKH,TENKH
having count(*)>= all (select count(*) from KHACHHANG, HOADON
where KHACHHANG.MAKH = HOADON.MAKH
group by KHACHHANG.MAKH,TENKH)
select *from cau26

27. Lấy ra các thông tin của khách hàng có số lượng hàng mua nhiều nhất.
create view cau27
as
select KHACHHANG.MAKH, TENKH, sum(SL) as N'Số lượng hàng mua'
from KHACHHANG, HOADON, CTHD
where KHACHHANG.MAKH = HOADON.MAKH and HOADON.MAHD=CTHD.MAHD
group by KHACHHANG.MAKH,TENKH
having sum(SL) >=all(select sum(SL) from KHACHHANG, HOADON, CTHD
where KHACHHANG.MAKH = HOADON.MAKH and HOADON.MAHD=CTHD.MAHD
group by KHACHHANG.MAKH,TENKH)
select *from cau27

28. Lấy ra các thông tin về các mặt hàng mà được bán trong nhiều hóa đơn nhất.
create view cau28
as
select CTHD.MAHD,TENVT,count(*) as N'Số lượng hóa đơn'
from CTHD,VatTu
where CTHD.MAVT = VATTU.MAVT
group by CTHD.MAHD,TENVT
having count(*)>=all(select count(*) from CTHD, VATTU
where CTHD.MAVT = VATTU.MAVT
group by CTHD.MAHD,TENVT)
select *from cau28

29. Lấy ra các thông tin về các mặt hàng mà được bán nhiều nhất.
create view cau29
as
select CTHD.MAVT,TENVT,count(*) as N'Số lượng bán'
from CTHD, VATTU
where CTHD.MAVT = VATTU.MAVT
group by CTHD.MAVT,TENVT
having count(*)>=all(select count(*) from CTHD, VATTU
where CTHD.MAVT = VATTU.MAVT
group by CTHD.MAVT,TENVT)
30. Lấy ra danh sách tất cả các khách hàng gồm Mã khách hàng, tên khách hàng,
địa chỉ, số lượng hóa đơn đã mua (nếu khách hàng đó chưa mua hàng thì cột số
lượng hóa đơn để trống)
create view cau30
as
select K.MAKH, TENKH, DIACHI,
case when (not exists (select MAKH from HOADON)) then 0
else (select sum(SL) from HOADON H, CTHD C
where H.MAHD=C.MAHD and K.MAKH = H.MAKH
group by H.MAKH)
end as N'Số lượng mua'
from KHACHHANG K
select *from cau30

You might also like