TẠO CSDL QL BÁN HÀNG I.Tạo cơ sở dữ liệu.... ừ Săấp xềấp tăng dấền thẽo sôấ l ượ ng: mahd, mah, soluong, dongiasẽlẽct*from ChiTiẽt whẽrẽ SOLUONG>=10 and SOLUONG... Mahd, ệ ữ ơ thang, mah
Trang 1TRƯỜNG ĐẠI HỌC DUY TÂN
TT ĐÀO TẠO TRỰC TUYẾN & BẰNG 2
Trang 2Đà Nẵng,19 tháng 11 năm 2023
MỤC LỤC
PHẦN I- MÔ HÌNH CƠ SỞ DỮ LIỆU
I Mô tả bài toán
II Vẽ mô hình thực thể liên kết
III Vẽ mô hình quan hệ
IV Cho dữ liệu vào mỗi bảng
PHẦN II- BIỂU THỨC ĐẠI SỐ QUAN HỆ
PHẦN III NGÔN NGỮ SQL I.Viết câu lệnh về bảng………
II.Viết câu lệnh chỉnh sửa cấu trúc bảng………
III.Viết câu lệnh về dữ liệu………
IV.Câu lệnh về thao tác………
PHẦN IV TẠO CSDL QL BÁN HÀNG I.Tạo cơ sở dữ liệu
II.Truy vấn từ 1 bảng
III.Truy vấn từ nhiều bảng
IV.Truy vấn sử dụng hàm
V.Truy vấn gộp nhóm
VI.Truy vấn lồng nhau và khác
Trang 3PHẦẦN I- PHẦN TÍCH YÊU CẦẦU VÀ THIÊẾT KÊẾ MÔ HÌNH C Ơ
I Mô t bài toán ả
Doanh nghi p Bình Minh là m t doanh nghi p s n xuấất may m c, có ệ ộ ệ ả ặnhiềều phấn x ưởng s n xuấất, môỗi phấn xả ưởng có tền phấn xưởng, đ a ị
ch , sôấ đi n tho i liền l c.ỉ ệ ạ ạ
Doanh nghi p có nhiềều đ n v tr c tiềấp s n xuấất Thông tin môỗi đ n v ệ ơ ị ự ả ơ ịgôềm mã đ n v , tền đ n v Môỗi phấn xơ ị ơ ị ưởng s n xuấất có th có nhiềều ả ể
đ n v , đôềng th i môỗi đ n v ch thu c m t phấn xơ ị ờ ơ ị ỉ ộ ộ ưởng Doanh nghi p ệ
có nhiềều nhấn viền, môỗi nhấn viền ch làm vi c m t đ n v , môỗi đ n ỉ ệ ở ộ ơ ị ơ
v có th có nhiềều nhấn viền Thông tin vềề m t nhấn viền gôềm có: Mã ị ể ộnhấn viền, h tền, ngày sinh, đ a ch , ngày vào làm vi c… Doanh nghi p ọ ị ỉ ệ ệ
s n xuấất nhiềều s n ph m khác nhau nh áo quấền, gi , nón,,, qu n lý ả ả ẩ ư ỏ ảthông tin vềề s n ph m gôềm mã s n ph m, tền s n ph m, đ n v tính ả ẩ ả ẩ ả ẩ ơ ịMôỗi nhấn viền có th tham gia s n xuấất các khấu trong nhiềều s n ph mể ả ả ẩ
và môỗi s n ph m hoàn thành có th do nhiềều nhấn viền tham gia Môỗi ả ẩ ểnhấn viền tham gia vào các s n ph m có lả ẩ ượng th i gian đờ ược ghi nh nậ
Trang 4Hotẽn Diachi
Tẽndv
Ngaysinh
Trang 5IV Cho d li u môỗi b ng >=5 dòng ữ ệ ả
Trang 6PHẦẦN II- Bi U TH C Đ I SÔẾ QUAN H Ể Ứ Ạ Ệ
1 Li t kề các đ n v thu c phấn x ệ ơ ị ộ ưở ng X Madv,tẽndv,mapx(ho c masp,tẽnsp,thoigian) ặ
- П madv,tẽndv,mapx(δ mapx = “X” (Donvi))
2 Li t kề nh ng s n ph m thu c đ n v X ệ ữ ả ẩ ộ ơ ị Masp,tẽnsp,manv,thoigian.
- П masp,tẽnsp,manv,thoigian (δ madv = “X” ( Nhanviẽn * Sanxuat * Sanpham))
3 Li t kề nh ng s n ph m có th i gian >=20h ệ ữ ả ẩ ờ Masp,tẽnsp,manv,thoigian.
- П (δ (Sanxuat * Sanpham))
Trang 7Cơ sở dữ liệu None
7
CSDL - strt3
Cơ sở dữ liệu None
3
Trang 84 Li t kề nh ng nhấn viền v a tham gia s n ph m X ệ ữ ừ ả ẩ
v a tham gia s n ph m Y Manv,hotẽn,masp,tẽnsp ừ ả ẩ
- П manv,hotẽn,masp,tẽnsp (δ tẽnsp= “X” (Nhanviẽn * Sanpham)) ∩
П manv,hotẽn,masp,tẽnsp (δ tẽnsp= “Y” (Nhanviẽn * Sanpham))
(MADV tẽxt (20) primary kẽy, TENDV tẽxt (20), TENPX tẽxt (20))
2- crẽatẽ tablẽ PHÂN XƯỞNG
(TENPX tẽxt (30) primary kẽy, DIACHI tẽxt (30), SĐT tẽxt (30))
3- crẽatẽ tablẽ NHÂN VIẾN
(MANV tẽxt (20) primary kẽy, HOTEN tẽxt (20), NGAYSINH datẽtimẽ, DIACHI tẽxt (20), NGAYLAM datẽtimẽ, MADV tẽxt (20))
4- crẽatẽ tablẽ S N PH MẢ Ẩ
(MASP tẽxt (20) primary kẽy, TENSP tẽxt (20), ĐVT numbẽr)
5- crẽatẽ tablẽ NV-SP
(primary kẽy(MASP tẽxt (20),MANV tẽxt (20)),TINHLUONG numbẽr)
II VIẾẾT CÂU L NH CH NH S A CÂẾU TRÚC B NG Ệ Ỉ Ử Ả
24 Nguyen Khuong Long 1925 IS301I…
Cơ sở dữ liệu None
14
Trang 9altẽr tablẽ S N PH M altẽr column ĐVT tẽxtẢ Ẩ
III VIẾẾT CÂU L NH VẾỀ D LI U Ệ Ữ Ệ
IV CÂU L NH VẾỀ THAO TÁC D LI U Ệ Ữ Ệ
1- Truy vấấn lấấy d li u t 1 b ng 8 cấu ữ ệ ừ ả
+ Câu không có điềều ki n ệ : SELECT MASP,TENSP,DVT from S N Ả
+ Câu có s d ng bi u th c ử ụ ể ứ : SELECT YEAR (NGAYLAM) AS NAM
FROM NHÂN VIẾN
+ Câu có dùng tuỳ ch n top N ọ : SELECT TOP 2 * FROM S N PH M Ả ẨWHERE ĐVT >150000
+Câu có dùng tuỳ ch n *: ọ SELECT * from NHÂN VIẾN
Trang 10+Câu có dùng tuỳ ch n order by ọ : SELECT MANV,TINHLUONG FROM NV-SP ORDER BY TINHLUONG
2- Truy vấấn t nhiềều b ng ừ ả
2 cấu truy vấấn t 2 b ng không cấền điềều ki n l c:ừ ả ệ ọ
Sẽlẽct PHÂN XƯỞNG.mapx, tẽndv from Đ N V , PHÂN XƠ Ị ƯỞNG Sẽlẽct Đ N V madv, manv, tẽndv from Đ N V , NHÂN VIẾN.Ơ Ị Ơ Ị
3- Truy vấấn có dùng hàm
+ 1 cấu có dùng làm sum có điềều ki n:ệ
Sẽlẽct sum(ĐVT) as Tong_ĐVT from S N PH M whẽrẽ MASP="01"Ả Ẩ+ 1 cấu có dùng hàm count:
Sẽlẽct count(TENPX) as So_phan_xuong from Cong
whẽrẽ MADV=”ĐV1”
+ 1 cấu dùng hàm avg có điềều ki n:ệ
Sẽlẽct avg(ĐVT) as TB_ĐVT from Cong whẽrẽ MASP="02"
+ 1 cấu có dùng hàm max lấấy thông tin t 2 b ng:ừ ả
Sẽlẽct MASP, max(TINHLUONG) as LUONGCAONHAT from NV-SP
group by MASP
Trang 115 Nh p d li u cho môỗi b ng Khachhang, ậ ữ ệ ả
hoadon,hang: môỗi b ng 5 dòng ả
Hang
Khachhang
Trang 126 Nh p d li u cho b ng chitiẽt: 10 dòng ậ ữ ệ ả
Trang 13II TRUY VÂẾN T 1 B NG Ừ Ả
7 Lấấy nh ng khách hàng phái N : ữ ữ
makh,hotẽn,phai,sđt.(Nam=Yẽs, Nu=No)
sẽlẽct*from KhachHang whẽrẽ PHAI=No
8 Lấấy nh ng m t hàng có dvt=kg (ho c dvt khác): ữ ặ ặ mah, tẽnh, dvt.
Trang 1410.Lấấy nh ng m t hàng có sôấ l ữ ặ ượ ng t 10 đềấn 20 ừ Săấp xềấp tăng dấền thẽo sôấ l ượ ng: mahd, mah, soluong, dongia
sẽlẽct*from ChiTiẽt whẽrẽ SOLUONG>=10 and SOLUONG<=20
11 Lấấy 2 m t hàng có đ n giá cao nhấất ặ ơ mah, soluong, dongia
sẽlẽct TOP 2 MAH,SOLUONG,DONGIA from ChiTiẽt ordẽr by DONGIA DESC
III TRUY VÂẾN T NHIẾỀU B NG Ừ Ả
12 Li t kề nh ng hóa đ n c a ệ ữ ơ ủ khách h Lề (ho c ọ ặ
h khác): makh, hotẽn, mahd, ngayhd ọ
sẽlẽct a.MAKH,HOTEN,MAHD,NGAYHD from KhachHang a,HoaDon b whẽrẽ a.MAKH=b.MAKH and HOTEN likẽ"Trấền*"
Trang 1513 Li t kề nh ng m t hàng Bia có đ n giá >40000 ệ ữ ặ ơ Mah, tẽnh, soluong, dongia
sẽlẽct a.MAH,TENH,SOLUONG,DONGIA from Hang a,ChiTiẽt b whẽrẽ a.MAH=b.MAH and TENH likẽ"Bia*" and DONGIA>=40000
14 Li t kề nh ng hóa đ n trong tháng 6 Mahd, ệ ữ ơ thang, mah, soluong
sẽlẽct a.MAHD,month(NGAYHD) as Thang,MAH,SOLUONG from HoaDon a,ChiTiẽt b whẽrẽ a.MAHD=b.MAHD and month(NGAYHD)=6
15 Li t kề nh ng khách hàng mua “hoa hôềng”: ệ ữ Makh, mah, tẽnh, soluong
sẽlẽct a.MAKH,b.MAH,TENH,SOLUONG from HoaDon a,ChiTiẽt b,Hang c whẽrẽ a.MAHD=b.MAHD and b.MAH=c.MAH and TENH="Hoa Hôềng"
Trang 1616 Li t kề nh ng khách phái nam có mua “bia” ệ ữ Makh, hotẽn, phai, mah, tẽnh, soluong
sẽlẽct a.MAKH,HOTEN,PHAI,b.MAH,TENH,SOLUONG from KhachHang a,Hang b,HoaDon c,ChiTiẽt d whẽrẽ a.MAKH=c.MAKH and
c.MAHD=d.MAHD and d.MAH=b.MAH and TENH likẽ"Bia*" and PHAI=Yẽs
IV TRUY VÂẾN S D NG HÀM Ử Ụ
17 Đềấm sôấ hóa đ n c a kh01 ơ ủ
sẽlẽct COUNT(MAHD) as SOHD from HoaDon whẽrẽ MAKH="KH01”
18 Tính sôấ l ượ ng cao nhấất c a m t hàng “Bia ủ ặ huda”
sẽlẽct MAX(SOLUONG) as SOLUONGMAX from ChiTiẽt whẽrẽ MAH="H5"
19 Tính t ng tiềền đã bán đ ổ ượ c trong năm 2023
Trang 17sẽlẽct SUM(SOLUONG*DONGIA) as TONGTIEN from ChiTiẽt a,HoaDon b whẽrẽ a.MAHD=b.MAHD and yẽar(NGAYHD)=2023
20 Tính đ n giá thấấp nhấất c a m t hàng h01 ơ ủ ặsẽlẽct min(DONGIA) as DONGIAMIN from ChiTiẽt whẽrẽ MAH="H1"
21 Tính sôấ l ượ ng trung bình c a hóa đ n HD02 ủ ơsẽlẽct AVG(SOLUONG) as SOLUONGAVG from ChiTiẽt whẽrẽ
MAHD="HD02"
V TRUY VÂẾN G P NHÓM Ộ
22 Tính t ng sôấ l ổ ượ ng đã bán c a t ng m t hàng: ủ ừ ặ mah, tẽnh, tong_sl
sẽlẽct a.MAH,TENH,sum(SOLUONG) as Tong_SL from Hang a,ChiTiẽt b whẽrẽ a.MAH=b.MAH
Group by a.MAH,TENH
Trang 1823 Tính t ng tiềền c a môỗi hóa đ n: Mahd, ngayhd, ổ ủ ơ makh, tong_tiẽn
24 Lấấy m t hàng bán v i trung bình đ n giá ặ ớ ơ
Trang 19VI TRUY VÂẾN LỒỀNG NHAU VÀ KHÁC
27 Lấấy m t hàng ch a có ng ặ ư ườ i mua: Mah, tẽnh, dvt
sẽlẽct*from Hang whẽrẽ MAH NOT IN(Sẽlẽct MAH from ChiTiẽt)
28 Lấấy đ n có t ng tiềền cao nhấất ơ ổ
sẽlẽct MAHD,SUM(SOLUONG*DONGIA) as Tong from ChiTiẽt
Group by MAHD HAVING sum(SOLUONG*DONGIA)>=ALL(Sẽlẽct sum(SOLUONG*DONGIA) from ChiTiẽt Group by MAHD)
29 Lấấy khách hàng mua c bia c r ả ả ượ u
(sẽlẽct MAKH from HoaDon a,Hang b,ChiTiẽt c whẽrẽ
a.MAHD=c.MAHD and b.MAH=c.MAH and TENH LIKE"Bia*")union (sẽlẽct MAKH from HoaDon a,Hang b,ChiTiẽt c whẽrẽ
a.MAHD=c.MAHD and b.MAH=c.MAH and TENH likẽ"Ruou*")
Trang 20
30 Lấấy hóa đ n mua tấất c các món hàng ơ ả
Sẽlẽct MAHD,count(MAH) as SOMON from ChiTiẽt
Group by MAHD Having count(MAH)=(Sẽlẽct count(MAH) from Hang)
31 C p nh t đ n giá lền 10% cho m t hàng H01 ậ ậ ơ ặ Updatẽ ChiTiẽt
SET DonGia=DonGia*1.1
whẽrẽ MAH="H1"
32 Xóa m t hàng không có ng ặ ườ i mua
DELETE from Hang whẽrẽ MAH not in (Sẽlẽct DISTINCT MAH from ChiTiẽt)