Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Trường đại học Ngân Hàng TP HCM, Thesis of Computer Science

bài tập cơ sở dữ liệu, bài tập

Typology: Thesis

2024/2025

Uploaded on 11/01/2024

linh-thi-huyen
linh-thi-huyen 🇻🇳

1 document

1 / 3

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
BÀI TẬP
Môn học: CƠ SỞ DỮ LIỆU
Các lược đồ quan hệ được sử dụng để xây dựng cơ sở dữ liệu nhằm mục đích lưu trữ dữ liệu liên quan
đến các hoạt động bán hàng của một chuỗi cửa hàng với thông tin mô tả dữ liệu trong các quan hệ cụ thể như
sau:
customers: Lưu trữ dữ liệu thông tin của khách hàng
staffs: Lưu trữ dữ liệu thông tin của nhân viên tại các của cửa hàng, mỗi nhân viên làm việc tại một cửa
hàng xác định bởi thuộc tính store_id thông tin người quản nhân viên được xác định bởi thuộc tính
manager_id.
stores: Lưu trữ dữ liệu thông tin của các cửa hàng
orders: Lưu trữ dữ liệu đơn hàng của các khách hàng tại các cửa hàng, mỗi đơn hàng được bán tại một cửa
hàng xác định bởi thuộc tính store_id và thông tin nhân viên bán đơn hàng được xác định bởi thuộc tính
staff_id. Tại cột order_status gồm các giá trị từ 1 đến 4, ý nghĩa của mỗi giá trị như sau:
1 = Pending (Đơn hàng đang chờ xử lý);
2 = Processing (Đơn hàng đang xử lý);
3 = Rejected (Đơn hàng bị từ chối hoặc bị hủy);
4 = Completed (Đơn hàng đã hoàn tất)
order_items: Lưu trữ dữ liệu thông tin chi tiết đơn hàng, mỗi đơn hàng (order_id) có thể gồm nhiều sản
phẩm với số lượng (quantity), mức giá (list_price) và giá được giảm (discount) cho từng sản phẩm.
categories: Lưu trữ dữ liệu danh mục các loại sản phẩm
brands: Lưu trữ dữ liệu danh mục các thương hiệu sản phẩm
products: Lưu trữ dữ liệu các sản phẩm được bán tại các cửa hàng, gồm thông tin về tên
(product_name), thương hiệu (brand_id), ID loại sản phẩm (category_id), năm sản xuất (model_year), đơn
giá (list_price).
pf3

Partial preview of the text

Download Trường đại học Ngân Hàng TP HCM and more Thesis Computer Science in PDF only on Docsity!

BÀI TẬP

Môn học: CƠ SỞ DỮ LIỆU

Các lược đồ quan hệ được sử dụng để xây dựng cơ sở dữ liệu nhằm mục đích lưu trữ dữ liệu liên quan đến các hoạt động bán hàng của một chuỗi cửa hàng với thông tin mô tả dữ liệu trong các quan hệ cụ thể như sau: customers: Lưu trữ dữ liệu thông tin của khách hàng staffs: Lưu trữ dữ liệu thông tin của nhân viên tại các của cửa hàng, mỗi nhân viên làm việc tại một cửa hàng xác định bởi thuộc tính store_id và thông tin người quản lý nhân viên được xác định bởi thuộc tính manager_id. stores: Lưu trữ dữ liệu thông tin của các cửa hàng orders: Lưu trữ dữ liệu đơn hàng của các khách hàng tại các cửa hàng, mỗi đơn hàng được bán tại một cửa hàng xác định bởi thuộc tính store_id và thông tin nhân viên bán đơn hàng được xác định bởi thuộc tính staff_id. Tại cột order_status gồm các giá trị từ 1 đến 4, ý nghĩa của mỗi giá trị như sau: 1 = Pending (Đơn hàng đang chờ xử lý); 2 = Processing (Đơn hàng đang xử lý); 3 = Rejected (Đơn hàng bị từ chối hoặc bị hủy); 4 = Completed (Đơn hàng đã hoàn tất) order_items: Lưu trữ dữ liệu thông tin chi tiết đơn hàng, mỗi đơn hàng (order_id) có thể gồm nhiều sản phẩm với số lượng (quantity), mức giá (list_price) và giá được giảm (discount) cho từng sản phẩm. categories: Lưu trữ dữ liệu danh mục các loại sản phẩm brands: Lưu trữ dữ liệu danh mục các thương hiệu sản phẩm products: Lưu trữ dữ liệu các sản phẩm được bán tại các cửa hàng, gồm thông tin về tên (product_name), thương hiệu (brand_id), ID loại sản phẩm (category_id), năm sản xuất (model_year), đơn giá (list_price).

stocks: Lưu trữ dữ liệu số lượng sản phẩm còn tồn tại mỗi cửa hàng gồm thông tin: ID cửa hàng (store_id), ID sản phẩm (product_id) và số lượng còn tồn (quantity) Các yêu cầu cần thực hiện:

  1. Chạy các script trong file banhang.sql để tạo các bảng và dữ liệu.
  2. Viết các câu lệnh SQL để thực hiện theo các yêu cầu sau: a. Lấy danh sách các sản phẩm có giá tiền nhỏ hơn 149.99. Thông tin gồm: Mã sản phẩm (product_id), Tên sản phẩm (product_name), Năm sản xuất (model_year), Đơn giá (list_price), Tên thương hiệu (brand_name). b. Lấy danh sách các sản phẩm không có tại cửa hàng Baldwin Bikes. Thông tin gồm: Mã sản phẩm (product_id), Tên sản phẩm (product_name), Năm sản xuất (model_year), Đơn giá (list_price). c. Lấy danh sách các sản phẩm có số lượng hàng tồn lớn hơn 2 tại cửa hàng Baldwin Bikes. Thông tin gồm: Mã sản phẩm (product_id), Tên sản phẩm (product_name), Năm sản xuất (model_year), Đơn giá (list_price). d. Lấy danh sách những khách hàng có tổng giá trị đơn hàng (chưa giảm giá) lớn hơn 3000 ($). Thông tin hiển thị gồm họ tên (first_name, last_name) , email, tổng giá trị đơn hàng. e. Thống kê số lượng đơn hàng giao dịch thành công(biết đơn hàng giao dịch thành công có order_status = 4) của mỗi nhân viên. Thông tin gồm: Mã nhân viên (staff_id), Họ tên (first_name, last_name), email, số lượng đơn hàng giao dịch thành công. f. Lấy danh sách các sản phẩm hiện có tại chi nhánh Rowlett Bikes. Thông tin gồm: Mã sản phẩm (product_id), Tên sản phẩm (product_name), Năm sản xuất (model_year), Đơn giá (list_price). g. Lấy danh sách các sản phẩm thuộc loại (category) là: Mountain Bikes và có số lượng hàng tồn nhỏ hơn 5. Thông tin gồm: Mã sản phẩm (product_id), Tên sản phẩm (product_name), Năm sản xuất (model_year), Đơn giá (list_price), loại sản phẩm (category_name) h. Lấy thông tin các khách hàng có số lượng đơn hàng lớn hơn 2. Thông tin hiển thị gồm: Mã khách hàng (customer_id), Họ tên (first_name, last_name), số đơn hàng (đặt tên cột là total ). i. Lấy danh sách đơn hàng có tổng số tiền được giảm giá (discount) lớn hơn 50 ($) (discount được tính theo tỉ lệ %. Ví dụ: 0.2 = 20%, 0.05 = 5%,... .). Thông tin gồm: Mã đơn hàng (order_id), Tên nhân viên bán hàng(first_name, last_name), số tiền được giảm. j. Thống kê số lượng đơn hàng bị hủy tại mỗi chi nhánh (biết đơn hàng bị hủy có order_status = 3). Thông tin hiển thị gồm tên chi nhánh (store_name), số đơn hàng bị hủy. k. Lấy danh sách những nhân viên có số lượng đơn hàng lớn hơn 20 trong tháng 1/2017. Thông tin hiển thị gồm mã nhân viên (staff_id), họ tên (first_name, last_name), số lượng đơn hàng. l. Lấy danh sách khách hàng có tổng số tiền thanh toán cho tất cả đơn hàng (đã có giảm giá) lớn hơn 20000 , chỉ tính đơn hàng thành công (order_status = 4). Một sản phẩm trong đơn hàng khi có giảm giá thì số tiền thanh toán = quantitylist_price(1-discount). Thông tin hiển thị gồm: Mã khách hàng (customer_id), Họ tên (first_name, last_name), email, tổng số tiền thanh toán. m. Lấy thông tin số lượng sản phẩm nhiều nhất trong một đơn hàng thành công (order_status = 4). Thông tin hiển thị gồm: Số lượng sản phẩm nhiều nhất (đặt tên cột là max_total ) n. Liệt kê ra các đơn hàng giao dịch thành công (order_status = 4) có nhiều sản phẩm nhất. Thông tin hiển thị gồm: Mã đơn hàng, số lượng sản phẩm (đặt tên cột là max_total )