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

cbài tập cá nhân cơ sỡ dữ liệu đề tài quản lý bán hàng

13 1 0

Đ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 Văn Thuận
Người hướng dẫn Trần Huệ Chi
Trường học Trường Đại Học Duy Tân
Chuyên ngành Cơ Sở Dữ Liệu
Thể loại Bài tập cá nhân
Thành phố Đà Nẵng
Định dạng
Số trang 13
Dung lượng 612,58 KB

Nội dung

Mô tả bài toánMỗ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 DIENTHOAI.

Trang 1

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

BÀI TẬP CÁ NHÂN MÔN: CƠ SỠ DỮ LIỆU

Đề tài QUẢN LÝ BÁN HÀNG

Giảng viên hướng dẫn : Trần Huệ Chi Sinh viên thực hiện : Nguyễn Văn Thuận Lớp : IS 301 B

Mã sinh viên: 28211106441

Trang 2

MỤC LỤC PHẦN I – PHÂN TÍCH YÊU CẦU VÀ THIẾT KẾ MÔ HÌNH CƠ SỞ DỮ LIỆU 1

1 Mô tả bài toán 1

2 Mô hình thực thể liên kết 2

3 Mô hình quan hệ 2

4 Nhập dữ liệu 3

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

PHẦN III – NGÔN NGỮ SQL 6

1 Câu lệnh tạo bảng 6

2 Câu lệnh chỉnh sửa cấu trúc bảng 6

2.1 Câu lệnh thêm cột 6

2.2 Câu lệnh xóa cột 6

2.3 Câu lệnh đổi kiểu dữ liệu 6

3 Câu lệnh về dữ liệu 7

3.1 Câu lệnh nhập dữ liệu vào bảng 7

3.2 Câu lệnh xóa dữ liệu 7

4 Câu lệnh thao tác dữ liệu 7

4.1 Truy vấn lấy dữ liệu từ 1 bảng (8 câu) 7

4.2 Truy vấn từ nhiều bảng (6 câu) 8

4.3 Truy vấn có dùng hàm 10

4.4 Truy vấn có gộp nhóm 10

Trang 3

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

SỞ DỮ LIỆU

1 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 (DIENTHOAI) 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 (SOHD) duy nhất, mỗi hóa đơn xác định dược khách hàng và ngày lập hóa đơn (NGAYLAPHD), ngày bán hàng (NGAYBAN) 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 đó

KHACHHANG (MAKH, HOTEN, DIACHI, DIENTHOAI)

NHOMHANG (MANHOM, TENNHOM)

HOADON (SOHD, NGAYLAPHD, NGAYBAN)

MATHANG (MAHANG, TENHANG, DONGIA, DVT)

BAN (SOHD, MAHANG, SLBAN)

Trang 4

2.Mô hình thực thể liên kết

Bản vẽ mô hình thực thể liên kết 3.Mô hình quan hệ

Bản vẽ mô hình quan hệ

Trang 5

4.Nhập dữ liệu

Bảng dữ liệu KHACHHANG

Bảng dữ liệu NHOMHANG

Bảng dữ liệu MATHANG

Trang 6

Bảng dữ liệu HOADON

Bảng dữ liệu BAN

Trang 7

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

1 Lập danh sách các khách hàng ở Đà Nẵng

δdiachi = “Đà Nẵng” (KHACHHANG)

2 Lập danh sách những mặt hàng có dvt là kg

δDVT = “kg” (MATHANG)

3 Lấy những hóa đơn năm 2023 Mahd, makh, ngayhd

πmahđ, makh, ngayhd (δ year(ngayhd) = 2023(hoadon))

4 Lấy những mặt hàng có sl bán>=20 Mah, mahd, slban

πmah, mahd, slban (δ slban >= 20 (ban))

5 Lấy những mặt hàng có trong hd01 Mahd, mah, tenh

πmahd, mah, tenh (δmahd = “hd01” (ban * mathang))

6 Lấy những mặt hàng mà kh01 đã mua Makh, mahd, mah, tenh πmakh, mahd, mah, tenh (δmakh = “kh01” (ban*hoadon * mathang))

7 Lấy những hóa đơn mua với sl>50 Mah, mahd, tenh, sl

πmah, mahd, tenh, slban (δ slban >50 (ban * mathang))

8 Lấy những mặt hàng chưa ai mua

πmah(mathang) – πmah(ban)

Trang 8

PHẦN III – NGÔN NGỮ SQL

1 Câu lệnh tạo bảng

CREATE TABLE KHACHHANG

(MAKH TEXT PRIMARY KEY,

HOTEN TEXT,

DIACHI TEXT,

DIENTHOAI NUMBER)

CREATE TABLE NHOMHANG

(MANHOM TEXT PRIMARY KEY,

TENNHOM TEXT)

CREATE TABLE MATHANG

(MAHANG TEXT PRIMARY KEY,

TENHANG TEXT,

DONGIA NUMBER,

DVT TEXT,

MANHOM TEXT REFERENCES NHOMHANG(MANHOM))

2 Câu lệnh chỉnh sửa cấu trúc bảng

2.1 Câu lệnh thêm cột

Alter table HOADON add column GIAMGIA number 2.2 Câu lệnh xóa cột

Alter table KHACHHANG drop column DIACHI 2.3 Câu lệnh đổi kiểu dữ liệu

alter table KHACHHANG

alter column DIENTHOAI int

Trang 9

3 Câu lệnh về dữ liệu

3.1 Câu lệnh nhập dữ liệu vào bảng

Insert into KHACHHANG (MAKH, HOTEN, DIACHI, DIENTHOAI) values (“KH06”, “Nguyễn Văn A”, “Hà Nội”, “0123456789”)

3.2 Câu lệnh xóa dữ liệu

Delete from KHACHHANG where MAKH = “KH01”

4 Câu lệnh thao tác dữ liệu

4.1 Truy vấn lấy dữ liệu từ 1 bảng (8 câu)

- Câu không cần điều kiện: Lập danh sách các khách hàng

Select makh, hotwn, diachi, dienthoai from KHACHHANG

- Câu có 1 điều kiện: Lấy những mặt hàng có dvt là “kg” tenh, dvt

Select tenh, dvt

From HANG

Where dvt = “kg”

- Câu có 2 điều kiện: Liệt kê các mặt hàng có số lượng

>=10 và <=20 Mah, soluong, dongia

Select mah, soluong, dongia

From BAN

Where soluong >= 10 and soluong <= 20

- Câu có sử dụng biểu thức: Lấy những hóa đơn trong

năm 2022 Mahd, nam

Select mahd, ngayhd as nam

From HOADON

Trang 10

Where year (ngayhd) = 2022

- Câu có dùng tùy chọn top N: Liệt kê 2 mặt hàng có đơn giá thấp nhất

Select top 2 mahang, tenhang, dongia

From MATHANG

Order by dongia

- Câu có dùng tùy chọn *: Lấy tất cả thông tin của các hóa đơn

Select * from HOADON

- Câu có dùng tùy chọn order by: Lấy danh sách khách hàng được sắp xếp theo mã khách hàng

Select * from KHACHHANG order by makh

- Câu có sử dụng kết hợp 2 hoặc 3 tùy chọn trên: Lấy danh sách 10 mặt hàng có Đơn giá cao nhất, được sắp xếp theo Mã hàng

Select top 10 * from MATHANG

Order by dongia, mahang

4.2 Truy vấn từ nhiều bảng (6 câu)

- 2 Câu truy vấn từ 2 bảng không cần điều kiện lọc

Truy vấn tất cả thông tin của bảng KHACHHANG và NHOMHANG:

Select * from KHACHHANG, NHOMHANG

Truy vấn số hóa đơn và ngày lập hóa đơn từ bảng HOADON và MATHANG:

Select hoadon.sohd, hoadon.ngaylaphd from hoadon, mathang

Trang 11

- 2 Câu truy vấn từ 2 bảng có thêm điều kiện lọc

Truy vấn số hóa đơn, ngày lập hóa đơn và mã hàng từ bảng HOADON và MATHANG chỉ khi mã hàng bằng

“MH01”:

select hoadon.sohd, hoadon.ngaylaphd, mathang.mahang from hoadon, mathang where mathang.mahang = “MH01” truy vấn mã khách hàng và địa chỉ từ bảng

KHACHHANG và NHOMHANG chỉ khi nhóm hàng là

“Snack”:

select khachhang.makh, khachhang.diachi

from khachhang, nhomhang

where nhomhang.tennhom = “snack”

- 2 Câu truy vấn từ 3 bảng trở lên

Truy vấn số hóa đơn, ngày lập hóa đơn, tên hàng, và số lượng bán từ các bảng HOADON, MATHANG và BAN: select hoadon.sohd, hoadon.ngaylaphd, mathang.tenhang, ban.slban from hoadon, mathang, ban

where hoadon.sohd = ban.sohd and mathang.mahang = ban.mahang

Truy vấn tên nhóm hàng, tên hàng, mã hàng và đơn giá

từ các bảng NHOMHANG, MATHANG và BAN chỉ khi

số lượng bán lớn hơn 10:

select nhomhang.tennhom, mathang.tenhang,

mathang.mahang, mathang.dongia

from nhomhang, mathang, ban

where nhomhang.manhom = mathang.manhom and mathang.mahang = ban.mahang and ban.slban > 10

Trang 12

4.3 Truy vấn có dùng hàm

- 1 câu có dùng làm sum có điều kiện: Tính tổng số lượng hàng đã bán trong toàn bộ các hóa đơn

select sum (SLBAN)

from BAN

- 1 câu dùng hàm count: Đếm số lượng khách hàng

select count (*) as sl_khachhang

from KHACHHANG

- 1 câu dùng hàm agv có điều kiện: Tính trung bình giá của các mặt hàng có số lượng bán lớn hơn 10

select avg(dongia)

from mathang

where mahang in

(select mahang

from ban

where slban > 10)

- 1 câu dùng max: tìm mặt hàng có giá cao nhất

select max(dongia)

from mathang

- 1 câu dùng min: Tìm số lượng bán nhỏ nhất trong bảng BAN

select min (slban)

from ban

4.4 Truy vấn có gộp nhóm

- 1 câu có dùng hàm sum: Tính tổng số lượng hàng đã bán của mỗi hóa đơn

select distinct b.sohd,

(select sum(slban) from ban where sohd = b.sohd) as tong_slban

from ban b

- 1 câu có dùng hàm count có điều kiện nhóm: đếm số lượng khách hàng theo từng nhóm hàng

select nh.tennhom,

(select count(*)

Trang 13

from khachhang kh, mathang mh

where kh.mahang = mh.mahang and mh.manhom = nh.manhom) as so_luong_kh

từ 2 bảng: Tìm mã hàng và giá cao nhất trong danh sách

các mặt hàng

select mh.mahang, max(mh.dongia) as gia_cao_nhat

from mathang mh

- 1 câu có dùng hàm avg có điều kiện nhóm: Tính giá

trung bình của các mặt hàng đã bán theo từng hóa đơn

select b.sohd, (select avg(dongia) from mathang where mahang = b.mahang) as gia_trung_binh from ban b

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

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

TÀI LIỆU LIÊN QUAN

w