1. Trang chủ
  2. » Luận Văn - Báo Cáo

đồ án nhóm cở sở dữ liệu đề tài quản lí bán hàng

12 2 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Quản lí bán hàng
Tác giả Nguyễn Tiến Minh, Đàm Quốc Vĩ, Phạm Lê Minh Thi
Người hướng dẫn Nguyễn Dũng
Trường học Trường Đại học Duy Tân
Chuyên ngành Cơ sở dữ liệu
Thể loại Đồ án nhóm
Định dạng
Số trang 12
Dung lượng 498,48 KB

Nội dung

QUẢN LÝ BÁN HÀNGPHẦN I: PHÂN TÍCH YÊU CẦU VÀ THIẾT KẾ MÔ HÌNH CƠ SỞ DỮ LIỆU:I.Mô tả bài toán :Mỗi khách hàng có một mã khách hàng MAKH duy nhất, mỗi MAKH xác định được các thông tin về k

Trang 1

TRƯỜNG ĐẠI HỌC DUY TÂN

ĐỒ ÁN NHÓM

Học phần : Cở sở dữ liệu

Mã học phần : IS 301

ĐỀ TÀI

Quản lí bán hàng

Họ và tên : Nguyễn Tiến Minh MSV: 4136

Đàm Quốc Vĩ MSV: 5439

Phạm Lê Minh Thi MSV: 7604

Lớp: IS 301 CA GVHD : Nguyễn Dũng

Trang 2

MỤC LỤC

PHẦN I: PHÂN TÍCH YÊU CẦU VÀ THIẾT KẾ MÔ HÌNH

PHẦN II: BIỂU THỨC ĐẠI SỐ QUAN HỆ 4 PHẦN III: CÂU LỆNH CHỈNH SỬA CẤU TRÚC BẢNG 5

Trang 3

QUẢN LÝ BÁN HÀNG PHẦN I: PHÂN TÍCH YÊU CẦU VÀ THIẾT KẾ MÔ HÌNH CƠ SỞ DỮ LIỆU:

I Mô tả bài toán :

Mỗi khách hàng có một mã khách hàng (MAKH) duy nhất, mỗi MAKH xác định được các thông tin về khách hàng như : họ tên khách hàng (HOTEN), địa chỉ (ĐIACHI), số điện thoại

(ĐIENTHOAI) Các mặt hàng được phân loại theo từng nhóm hàng, mỗi nhóm hàng có một mã nhóm (MANHOM) duy nhất, mỗi mã nhóm hàng xác định tên nhóm hàng (TENNHOM), tất nhiên một nhóm hàng có thể có nhiều mặt hàng Mỗi mặt hàng được đánh một mã số (MAHANG) duy nhất, mỗi mã số này xác định các thông tin về mặt hàng đó như : tên hàng (TENHANG), đơn giá bán (ĐONGIA), đơn vị tính (ĐVT) Mỗi hóa đơn bán hàng có một số hóa đơn (SOHĐ) duy nhất, mỗi hóa đơn xác định được khách hàng và ngày lập hóa đơn (NGAYLAPHĐ), ngày giao hàng (NGAYGIAO) Với mỗi mặt hàng trong một hóa đơn cho biết số lượng bán (SLBAN) của mặt hàng đó

Trang 4

II Vẽ mô hình thực thể :

2

III Vẽ mô hình quan hệ:

Trang 5

IV Cho dữ liệu bảng:

Trang 6

PHẦN II: BIỂU THỨC ĐẠI SỐ QUAN HỆ

1 Hiển thị tất cả các nhà cung cấp có địa chỉ tại Đà Nẵng gồm Mã nhà CC, tên nhà cung cấp và địa chỉ ( π_{MãNhàCC, TênNhàCungCấp, ĐịaChỉ}(σ_{ĐịaChỉ=‘Đà Nẵng’}(NhàCungCấp)) )

2 Hiển thị tất cả các sản phẩm do nhà cung cấp có tên là Cty Hoa Sen Gồm mã sản phẩn tên sản phẩm và số lượng

( π _{MãSảnPhẩm, TênSảnPhẩm, SốLượng}(σ_{TênNhàCungCấp=‘Cty Hoa Sen’}(SảnPhẩm ⨝ NhàCungCấp)) )

3.Hiển thị các sản phẩm do nhà cung cấp có số điện thoại là 0905222507:

( π _{TênNhàCungCấp, MãSảnPhẩm, TênSảnPhẩm, SốLượng}(σ_{ĐiệnThoại=‘0905222507’} (SảnPhẩm NhàCungCấp)) )⨝

4.Tính tổng số lượng tồn kho theo từng nhà cung cấp:

( G_{MãNhàCungCấp, TênNhàCungCấp; Tổng(SốLượng)}(SảnPhẩm NhàCungCấp) )⨝

5.Sản phẩm có số lượng tồn kho nhiều nhất:

( π _{MãNhàCungCấp, TênNhàCungCấp, SốLượng}(σ_{SốLượng= \max(SốLượng)}(SảnPhẩm ⨝ NhàCungCấp)) )

6.Tính tổng số tiền của hóa đơn có mã là HD01:

( G_{MãHóaĐơn; Tổng(SLBán \times ĐơnGiáBán)}(σ_{MãHóaĐơn=‘HD01’}(HóaĐơnBán ⨝ ChiTiếtHóaĐơn)) )

7.Thống kê tổng số tiền theo từng hóa đơn:

( G_{MãHóaĐơn, NgàyBán; Tổng(SLBán \times ĐơnGiáBán)}(HóaĐơnBán ChiTiếtHóaĐơn) )⨝

8.Hóa đơn mua nhiều tiền nhất trong ngày hiện tại:

( π_{MãHóaĐơn, NgàyBán, TổngTiền}(σ_{NgàyBán=‘NgàyHiệnTại’ \land TổngTiền= \

max(TổngTiền)}(G_{MãHóaĐơn, NgàyBán; Tổng(SLBán \times ĐơnGiáBán)}(HóaĐơnBán ⨝ ChiTiếtHóaĐơn))) )

9.Tổng số tiền mà khách hàng có mã là KH01 đã mua:

( G_{MãKháchHàng; Tổng(SLBán \times ĐơnGiáBán)}(σ_{MãKháchHàng=‘KH01’}(KháchHàng ⨝ HóaĐơnBán ChiTiếtHóaĐơn)) )⨝

10.Xóa những sản phẩm chưa bán lần nào:

( SảnPhẩm - π_{MãSảnPhẩm}(ChiTiếtHóaĐơn) )

11.Tăng giá của những sản phẩm do nhà cung cấp có mã là CC01 lên 100.000 cho mỗi sản phẩm:

( π_{MãSảnPhẩm, TênSảnPhẩm, ĐơnGiáBán+100000}(σ_{MãNhàCungCấp=‘CC01’}(SảnPhẩm)) )

12.Thống kê số tiền đã bán được trên từng sản phẩm:

( G_{MãSảnPhẩm, TênSảnPhẩm; Tổng(SLBán \times ĐơnGiáBán)}(SảnPhẩm ChiTiếtHóaĐơn) )⨝

13.Liệt kê các sản phẩm mà khách hàng có số điện thoại 0905222507 đã mua:

( π_{MãSảnPhẩm, TênSảnPhẩm, SLBán, ĐơnGiáBán, SLBán \times ĐơnGiáBán}

Trang 7

(σ_{ĐiệnThoại=‘0905222507’}(KháchHàng HóaĐơnBán ChiTiếtHóaĐơn)) )⨝ ⨝

14.Thống kê các đơn hàng của khách hàng ở Quảng Nam:

( G_{MãHóaĐơn, NgàyBán; Tổng(SLBán \times ĐơnGiáBán)}(σ_{ĐịaChỉ=‘Quảng Nam’}(KháchHàng

⨝ HóaĐơnBán ChiTiếtHóaĐơn)) )⨝

15.Thống kê tổng tiền theo từng khách hàng:

( G_{MãKháchHàng, TênKháchHàng; Tổng(TổngTiền)}(HóaĐơn) )

16.Đếm số lần giao dịch của khách hàng:

( G_{MãKháchHàng, TênKháchHàng; Đếm(SốHóaĐơn)}(HóaĐơn) )

17.Thống kê số tiền bán được theo ngày:

( G_{NgàyBán; Tổng(TổngTiền)}(HóaĐơn) )

18.Ngày bán được nhiều sản phẩm nhất:

( π_{NgàyBán}(G_{NgàyBán; Tổng(SốLượng)}(ChiTiếtHóaĐơn)) )

19.Hiển thị hóa đơn đã bán trong vòng một tuần từ ngày hiện tại:

( π_{MãHóaĐơn, NgàyHóaĐơn, TổngTiền}(σ_{NgàyHóaĐơn \geq (NgàyHiệnTại - 7)}(HóaĐơn)) )

20.Thống kê tổng số tiền mua theo giới tính:

( G_{GiớiTính; Tổng(TổngTiền)}(HóaĐơn KháchHàng) )⨝

21.Cập nhật đơn giá tăng 10% cho mặt hàng MH01:

( π_{MãHàng, TênHàng, ĐơnGiá \times 1.1}(σ_{MãHàng=‘MH01’}(MặtHàng)) )

Trang 8

PHẦN III: CÂU LỆNH CHỈNH SỬA CẤU TRÚC BẢNG

4.1 Cài đặt mô hình quan hệ ở câu 2 vào hệ quản trị CSDL SQL Server:

CopyCREATE TABLE NhomHang (

MaNhom NVARCHAR(10) PRIMARY KEY,

TenNhom NVARCHAR(50) NOT NULL,

MoTa NVARCHAR(200)

);

CREATE TABLE MatHang (

MaMatHang NVARCHAR(10) PRIMARY KEY,

TenMatHang NVARCHAR(50) NOT NULL,

MaNhom NVARCHAR(10) NOT NULL,

SoLuongTon INT,

DonGia DECIMAL(18,2),

FOREIGN KEY (MaNhom) REFERENCES NhomHang(MaNhom)

);

CREATE TABLE DonHang (

Trang 9

MaDonHang NVARCHAR(10) PRIMARY KEY,

TenDonHang NVARCHAR(50) NOT NULL,

MaKhachHang NVARCHAR(10) NOT NULL,

TongTien DECIMAL(18,2),

FOREIGN KEY (MaKhachHang) REFERENCES KhachHang(MaKhachHang) );

CREATE TABLE KhachHang (

MaKhachHang NVARCHAR(10) PRIMARY KEY,

TenKhachHang NVARCHAR(50) NOT NULL,

SoTienMuaHang DECIMAL(18,2),

DiaChi NVARCHAR(200)

);

4.2 Nhập dữ liệu cho các bảng, mỗi bảng ít nhất 10 dòng:

Copy Nhập dữ liệu cho bảng NhomHang

INSERT INTO NhomHang (MaNhom, TenNhom, MoTa)

VALUES

('01', 'Nhóm 01', 'Mô tả nhóm hàng 01'),

('02', 'Nhóm 02', 'Mô tả nhóm hàng 02'),

('03', 'Nhóm 03', 'Mô tả nhóm hàng 03');

Nhập dữ liệu cho bảng MatHang

INSERT INTO MatHang (MaMatHang, TenMatHang, MaNhom, SoLuongTon, DonGia) VALUES

('MH001', 'Mặt hàng 01', '01', 20, 50.00),

('MH002', 'Mặt hàng 02', '01', 15, 100.00),

Trang 10

('MH003', 'Mặt hàng 03', '02', 10, 200.00),

('MH004', 'Mặt hàng 04', '02', 5, 150.00),

('MH005', 'Mặt hàng 05', '03', 30, 80.00);

Nhập dữ liệu cho bảng DonHang

INSERT INTO DonHang (MaDonHang, TenDonHang, MaKhachHang, TongTien) VALUES

('DH001', 'Đơn hàng 01', 'KH001', 300.00),

('DH002', 'Đơn hàng 02', 'KH001', 500.00),

('DH003', 'Đơn hàng 03', 'KH002', 150.00),

('DH004', 'Đơn hàng 04', 'KH003', 120.00),

('DH005', 'Đơn hàng 05', 'KH004', 250.00);

Nhập dữ liệu cho bảng KhachHang

INSERT INTO KhachHang (MaKhachHang, TenKhachHang, SoTienMuaHang, DiaChi) VALUES

('KH001', 'Nguyễn Dũng', 800.00, 'Đà Nẵng'),

('KH002', 'Trần Thanh', 150.00, 'Quảng Nam'),

('KH003', 'Lê Hương', 120.00, 'Quảng Nam'),

('KH004', 'Nguyễn Tâm', 250.00, 'Đà Nẵng'),

('KH005', 'Trần Quốc', 350.00, 'Quảng Nam');

4.3 Hiển thị các nhóm hàng có những mặt hàng chưa bán lần nào:

CopySELECT nh.MaNhom, nh.TenNhom

FROM NhomHang nh

LEFT JOIN MatHang mh ON nh.MaNhom = mh.MaNhom

WHERE mh.MaMatHang IS NULL;

4.4 Hiển thị hai đơn hàng có số tiền nhiều nhất:

Trang 11

CopySELECT TOP 2 MaDonHang, TenDonHang, TongTien

FROM DonHang

ORDER BY TongTien DESC;

4.5 Hiển thị tất cả các khách hàng có số tiền mua hàng bằng với khách hàng có tên là Nguyễn Dũng: CopySELECT kh.MaKhachHang, kh.TenKhachHang, kh.SoTienMuaHang

FROM KhachHang kh

WHERE kh.SoTienMuaHang = (SELECT SoTienMuaHang FROM KhachHang WHERE

TenKhachHang = 'Nguyễn Dũng');

4.6 Hiển thị thông tin gồm mã hàng, tên hàng và ghi chú Trong đó cột ghi chú dựa vào số tiền được của mặt hàng Nếu mặt hàng có tiền bán được lớn hơn hoặc bằng 100 thì ghi là thấp, từ 101 đến 1000 là trung bình còn lại là cao:

CopySELECT mh.MaMatHang, mh.TenMatHang,

CASE

WHEN mh.DonGia >= 100 THEN 'Thấp'

WHEN mh.DonGia BETWEEN 101 AND 1000 THEN 'Trung bình'

ELSE 'Cao'

END AS GhiChu

FROM MatHang mh;

4.7 Hiển thị những khách hàng ở Đà Nẵng và Quảng Nam có tổng số tiền mua hàng lớn hơn 1.000.000 đồng:

CopySELECT kh.MaKhachHang, kh.TenKhachHang, kh.SoTienMuaHang, kh.DiaChi

FROM KhachHang kh

WHERE kh.DiaChi IN ('Đà Nẵng', 'Quảng Nam') AND kh.SoTienMuaHang > 1000000;

4.8 Xóa những khách hàng chưa mua hàng lần nào:

CopyDELETE FROM KhachHang

WHERE SoTienMuaHang IS NULL OR SoTienMuaHang = 0;

4.9 Cập nhật đơn giá cho những mặt hàng của nhóm 01 lên 10%:

CopyUPDATE MatHang

SET DonGia = DonGia * 1.1

WHERE MaNhom = '01';

4.10 Biểu diễn một cách chặt chẽ các ràng buộc toàn vẹn đã được mô tả trong lược đồ cơ sở dữ liệu trên: Ràng buộc toàn vẹn về khóa chính:

NhomHang (MaNhom): PRIMARY KEY

Trang 12

MatHang (MaMatHang): PRIMARY KEY

DonHang (MaDonHang): PRIMARY KEY

KhachHang (MaKhachHang): PRIMARY KEY

Ràng buộc toàn vẹn về khóa ngoại:

MatHang (MaNhom): FOREIGN KEY REFERENCES NhomHang(MaNhom)

DonHang (MaKhachHang): FOREIGN KEY REFERENCES KhachHang(MaKhachHang)

Ngày đăng: 24/04/2024, 16:26

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w