IMG-LOGO
×

Giáo Trình Môn Học

Khoá học lập trình SQL

Kiến Thức Core SQL Server

[Video] Hướng dẫn cách xác định kiểu dữ liệu, primary key, foreign key trong SQL - My SQL - SQL Server [Video] Hướng dẫn thao tác nhiểu bảng - select - multi table - join, inner join trong SQL Server [Video] Hướng dẫn phân tích CSDL - phân tích bảng, column trong bản - Học lập trình SQL, SQL Server [Video] Hướng dẫn tìm hiểu create, alter , insert table và bản chất primary key, foreign key - SQL Server [Video] Hướng dẫn tìm hiểu select, and, in, like, not in,group by .. having, order by asc, desc - SQL Server [Video] Quản lý sinh viên (create, alter, update, insert, select) - Lập trình SQL Server

View SQL Server

[Video] Hướng dẫn tìm hiểu view trong SQL Server Bài Giảng: Hướng dẫn tìm hiểu view + proc trong SQL - Lập trình SQL Server

Store & Procedure

[Video] Hướng dẫn tìm hiểu proc procedure trong SQL Server - Lập trình SQL Server, MySQL Bài Giảng: Xây dự hệ thống đưa đón học sinh bằng xe bus của Trường Học - Lập trình SQL Server [Video] Xây dựng CSDL quản lý điểm danh aptech - Lập trình SQL Server/MySQL

Trigger

[Video] Học Trigger qua ví dụ - quản lý nhà trên phố - Lập trình SQL Server [Video] Hướng dẫn học trigger qua bài quản lý điểm danh Aptech - Lập trình SQL Server [Video] Bài tập - Quản lý nhân khẩu - Lập trình SQL Server - MySQL




Trang Chủ SQL Server/MySQL Bài tập - Quản lý quán cafe - Lập trình SQL Server - MySQL

Bài tập - Quản lý quán cafe - Lập trình SQL Server - MySQL

by GokiSoft.com - 20:06 14/01/2022 16,977 Lượt Xem

Thiết kế CSDL phục vụ trong việc quản lý quán cafe. Yêu cầu đề bài như sau

- Quản lý được danh mục sản phâm của quán cafe

- Quản lý loại đồ uống trong quán cafe

- Quản lý nhân viên của hàng

- Quản lý đơn hàng -> mỗi đơn hàng được nhập vào bởi một nhân viên (Nghĩa là có thể xem đc đơn hàng này do nhân viên nào nhập) - Chú ý : Mỗi đơn hàng có thể có nhiều loại đồ uống

- Quản lý được khách hàng tới của hàng -> Đơn hàng sẽ mapping được vs khách hàng đã đặt đồ uống.

Yêu cầu nghiệp vụ

- Thiết kế CSDL & Nhập dữ liệu cho mỗi bảng 5 bản ghi

- Đánh index trên ít nhất 1 bảng. Tự chọn cột để đánh index

- Hiển thị danh sách loại đồ uống theo một danh mục -> yêu cầu viết truy vấn sql, tạo store (phần này làm 2 ý tách biết)

- Hiển thị danh mục sản phẩm trong 1 đơn hàng -> yêu cầu viết truy vấn sql và tạo 1 store cho chức năng này

- Hiển thị danh mục các đơn hàng theo mã KH.

- Hiển thị doanh thu theo ngày bắt đầu và ngày kết thức -> yêu cầu viết theo store.

Bình luận



Chia sẻ từ lớp học

nguyễn Sử [T2008A]

Ngày viết: 15:05 07/12/2020



create database cafe_manager
use cafe_manager

----  Quản lý được danh mục sản phâm của quán cafe ----
create table product_list(
productID int identity (1,1) primary key,
name_product nvarchar (100),
price money
)

insert into product_list(name_product,price)
values
('coffe','50'),
('Orange juice','60'),
('Apple juice','70'),
('grape juice','80'),
('peach juice','90')

 create table drink(
 drinkID int identity (1,1) primary key,
 drink_name nvarchar (100),
 price_drink money,
 )
 go
 insert into drink(drink_name,price_drink)
 values
 ('cocacola','50'),
 ('RedBull','60'),
 ('Sting','70'),
 ('Pepsi','80'),
 ('7Up','90')

 create table Staff_store(
 StaffID int identity (1,1) primary key,
 Staff_name nvarchar (100),
 birthday date,
 address nvarchar (100)
 )
 go
 insert into Staff_store(Staff_name, birthday, address)
 values
 ('ABC','2002-01-02','Ha Noi'),
 ('BCD','2002-02-03','Thai Binh'),
 ('CDE','2002-04-05','Lai Chau'),
 ('EFG','2002-06-07','Bac Giang'),
 ('HIK','2002-08-09','Thanh Hoa'),
 ('LMA','2002-10-11','Son Tay')

 create table Order_management(
 orderID int ,
 StaffID int,
 drinkID int,
 price money
 )
 go
 insert into Order_management(orderID,StaffID, drinkID, price)
 values
 ('1','1','1','100'),
 ('2','2','2','200'),
 ('3','3','3','200'),
 ('4','4','4','300'),
 ('5','5','5','400')


 create table Customer_management(
 CustomerID int identity (1,1) primary key,
 Customer_name nvarchar(100),
 dirink_name nvarchar(50),
 price money
 )
 go

 insert into Customer_management(Customer_name,dirink_name,price)
 values
 ('AAA','Milo','100'),
 ('BBB','Cocacola','200'),
 ('CCC','Sting','300'),
 ('DDD','coffe','400'),
 ('EEE','Sinh to','500')
 
 ---- inserting data ----
 select *from product_list
 select *from drink
 select *from Staff_store
 select *from Order_management
 select *from Customer_management

---  Đánh index ---
 CREATE INDEX product_list ON product_list (productID,name_product,price);

 --- foreign key ---
 alter table product_list
 add constraint fk_productID foreign key (productID) references product_list(productID)

 alter table drink
 add constraint fk_drinkID foreign key (drinkID) references drink(drinkID)

 alter table Staff_store
 add constraint fk_StaffID foreign key (StaffID) references Staff_store(StaffID)

 alter table Customer_management
 add constraint fk_CustomerID foreign key (CustomerID) references Customer_management(CustomerID)

 ----  Hiển thị danh sách loại đồ uống theo một danh mục  ----


Triệu Văn Lăng [T2008A]

Ngày viết: 15:04 07/12/2020



create database baitest
use baitest 

create table danhmucsp (
	id_sanpham int primary key identity(1, 1),
	ten_sp nvarchar(50),
	gia money
)

create table do_uong (
	id_DO int primary key identity(1, 1),
	ten_DO nvarchar(50),
	gia money
)

create table nhan_vien (
	id_NV int primary key identity(1, 1),
	ten_NV nvarchar(50),
	tuoi int,
	dia_chi nvarchar(100),
	SDT nvarchar(16),
	gioi_tinh nvarchar(10)
)

create table don_hang (
	id_DH int primary key identity(1, 1),
	id_DO int foreign key references do_uong (id_DO),
	id_NV int foreign key references nhan_vien (id_NV),
	id_khach int foreign key references khach_hang (id_khach),
	ngayban datetime,
	gia money
)

create table khach_hang (
	id_khach int primary key identity(1, 1),
	ten_KH nvarchar(50),
	dc_KH nvarchar(100),
	SDT_KH nvarchar(50),
	id_DH int,
	
)

insert into danhmucsp(ten_sp, gia)
values
('cafe', '1000'),
('tra sua', '2000'),
('banh ngot', '3000'),
('huong duong', '4000'),
('nuoc ngot', '4000')

insert into do_uong( ten_DO, gia)
values
('cafe den', '1000'),
('tra sua tran chau', '2000'),
('bo huc', '4000'),
('cafe nau', '1000'),
('sting', '4000')

insert into nhan_vien (ten_NV, tuoi, dia_chi, SDT, gioi_tinh)
values	
('TRAN VAN A', 19, 'Ha noi', '0987654321', 'nam'),
('TRAN VAN B', 20, 'Ha noi', '0789234567', 'nam'),
('NGUYEN THI C', 19, 'Ha noi', '0878987654', 'nu'),
('NGUYEN THI D', 21, 'Ha noi', '0967456789', 'nu'),
('TRAN VAN E', 20, 'Ha noi', '9879245345', 'nam')

insert into khach_hang(ten_KH, dc_KH, SDT_KH, id_DH)
values
('NGUYEN THI A', 'ha noi', '0986548246', 1),
('TRAN THI A', 'Ha noi', '0985423456', 2),
('LE THI B', 'Ha noi', '0898343264', 3),
('LE THI C', 'Ha noi', '0969878545', 4),
('LE THI D', 'Ha noi', '0253467987', 5)

insert into don_hang(id_DO, id_NV, id_khach, ngayban, gia)
values
(2, 3, 1, '2020-12-07', '10000'),
(1, 2, 2, '2020-12-07', '5000'),
(4, 4, 3, '2020-12-07', '5000'),
(3, 1, 4, '2020-12-07', '8000'),
(5, 5, 5, '2020-12-07', '8000')

select * from danhmucsp
select * from do_uong
select * from nhan_vien
select * from khach_hang
select * from don_hang



vuong huu phu [T2008A]

Ngày viết: 15:03 07/12/2020



create database cafe_manager
use cafe_manager

----bang quản lý danh mục sản phâm của quán cafe
create table product_list(
product_id int identity(1,1) primary key,
product_name nvarchar(100)
)

create table type_of_drink(
drinks_id int identity(1,1) primary key,
drinks_name nvarchar(100),
price money,
product_id int
)

create table Staff (
Staff_id int identity(1,1) primary key,
Staff_name nvarchar(100),
brith_day date,
Staff_address nvarchar(200)
)

create table beverage_order (
order_id int primary key,
drinks_id int,
price money,
Staff_id int
)
alter table customer
add order_id int
create table customer (
customer_id int identity(1,1) primary key,
customer_name nvarchar (100),
drinks_id int
)
create clustered index ci_do_uong on type_of_drink(drinks_name)

insert into product_list (product_name)
values
('cafe'),
('sinh to'),
('tra'),
('nuoc ep'),
('do an')

select * from product_list

insert into type_of_drink (drinks_name,price,product_id)
values 
('cafe nau da','25','1'),
('nuoc ep dua hau','20','4'),
('sin to bo','30','2'),
('banh ngot','55','5'),
('hong tra','25','3')

select * from type_of_drink

insert into Staff (Staff_name,brith_day,Staff_address)
values
('A','2008-08-09','Ha Noi'),
('S','2002-08-09','Thai Binh'),
('B','2003-08-09','Ha Noi'),
('C','2004-08-09','Hai Phong'),
('D','2004-08-09','Ha Noi')

select * from Staff

insert into  beverage_order (order_id,drinks_id,price,Staff_id)
values
('1','2','20','5'),
('2','5','25','2'),
('3','1','25','4'),
('4','2','20','3'),
('5','3','30','1')

select * from beverage_order

insert into customer (order_id ,customer_name,drinks_id)
values 
('1','AA','5'),
('2','TT','2'),
('3','AE','4'),
('4','FF','3'),
('5','BB','1')

select * from customer

alter table type_of_drink
add constraint fk_product_id foreign key (product_id) references product_list(product_id)


alter table beverage_order
add constraint fk_drink_id foreign key (drinks_id) references type_of_drink(drinks_id)

alter table beverage_order
add constraint fk_Staff_id foreign key (Staff_id) references Staff(Staff_id)

alter table customer
add constraint fk_order_id  foreign key (order_id ) references  beverage_order(order_id )

alter table customer
add constraint fk_customer_drinks_id  foreign key (drinks_id ) references  type_of_drink(drinks_id)

 ----Hiển thị danh sách loại đồ uống theo một danh mục
 ---cach 1
 select type_of_drink.drinks_name,type_of_drink.price,type_of_drink.product_id
 from customer,beverage_order,Staff,type_of_drink,product_list
 where type_of_drink.product_id = product_list.product_id and beverage_order.drinks_id = type_of_drink.drinks_id
 and Staff.Staff_id = beverage_order.Staff_id and customer.drinks_id = type_of_drink.drinks_id and product_list.product_id = '1'

 create proc sp_don_hang 
 @product int 
 as
 select type_of_drink.drinks_name,type_of_drink.price,type_of_drink.product_id
 from customer,beverage_order,Staff,type_of_drink,product_list
 where type_of_drink.product_id = product_list.product_id and beverage_order.drinks_id = type_of_drink.drinks_id
 and Staff.Staff_id = beverage_order.Staff_id and customer.drinks_id = type_of_drink.drinks_id and product_list.product_id = @product

 exec sp_don_hang  1

 ------hien thi damh muc sp
 select type_of_drink.drinks_name,type_of_drink.price,beverage_order.order_id
 from customer,beverage_order,Staff,type_of_drink,product_list
 where type_of_drink.product_id = product_list.product_id and beverage_order.drinks_id = type_of_drink.drinks_id
 and Staff.Staff_id = beverage_order.Staff_id and customer.drinks_id = type_of_drink.drinks_id and beverage_order.order_id = '1'

  create proc sp_ddh 
 @order int 
 as
  select type_of_drink.drinks_name,type_of_drink.price,beverage_order.order_id
 from customer,beverage_order,Staff,type_of_drink,product_list
 where type_of_drink.product_id = product_list.product_id and beverage_order.drinks_id = type_of_drink.drinks_id
 and Staff.Staff_id = beverage_order.Staff_id and customer.drinks_id = type_of_drink.drinks_id and beverage_order.order_id =  @order

 exec sp_ddh 2

 -------Hiển thị danh mục các đơn hàng theo mã KH.
  create proc sp_donhang_khach_hang
 @kh int 
 as
  select customer_name,type_of_drink.drinks_name,type_of_drink.price,beverage_order.order_id
 from customer,beverage_order,Staff,type_of_drink,product_list
 where type_of_drink.product_id = product_list.product_id and beverage_order.drinks_id = type_of_drink.drinks_id
 and Staff.Staff_id = beverage_order.Staff_id and customer.drinks_id = type_of_drink.drinks_id and customer_id =  @kh

 exec sp_donhang_khach_hang 1

alter proc sp_doanh_thu
 as
  select type_of_drink.drinks_name,type_of_drink.price,beverage_order.order_id,sum(beverage_order.price) as doanh_thu
 from customer,beverage_order,Staff,type_of_drink,product_list
 where type_of_drink.product_id = product_list.product_id and beverage_order.drinks_id = type_of_drink.drinks_id
 and Staff.Staff_id = beverage_order.Staff_id and customer.drinks_id = type_of_drink.drinks_id 
 group by type_of_drink.drinks_name,type_of_drink.price,beverage_order.order_id
 exec sp_doanh_thu


bui duy khanh [T2008A]

Ngày viết: 15:03 07/12/2020



create database QuanLyQuanCafe
use QuanLyQuanCafe

--bang quan ly danh muc san pham--
create table product_list(
  product_id int primary key identity(1,1),
  product_name nvarchar(50)
)
--bang quan ly loai do uong--
create table type_of_drink(
  drink_id int primary key identity(1,1),
  drink_name nvarchar(50),
  price money
)
--bang quan ly nhan vien--
create table Staff(
  staff_id int primary key identity(1,1),
  staff_name nvarchar(50),
  age int,
  address nvarchar(100)
)
--quan ly khach hang--
create table customer(
  id int primary key identity(1,1),
  fullname nvarchar(50),
  phone_number nvarchar(15),
  email nvarchar(50)
)
create table orders(
  orders_id int primary key identity(1,1),
  customer_id int references customer(id),
  staff_id int references staff(id),
  price_total money
)
create table OrderDetail (
  id int primary key identity(1,1),
  type_of_drink_id int references type_of_drink(id),
  price money,
  num int,
  price_total money,
  orderS_id int references orders(id)
)
insert into product_list(product_id, product_name)
values
(1,'sinh to')
(2,'nuoc ep')

insert into type_of_drink( drink_id, drink_name, price)
values
()
Aa


Trần Thị Khánh Huyền [T2008A]

Ngày viết: 15:03 07/12/2020

create database CaffeManagementSystem

Use CaffeManagementSystem


create table ProductList(

stt int primary key,

listname nvarchar(100)

)

create table BeverageType(

stt int,

beveragename nvarchar (100)

)

Create table Staff(

stt int,

staffname nvarchar(50)

)

Create table Bills(

Stt_Don_Hang int,

Staffname_Order nvarchar(50)

)

create table Customer(

Customername nvarchar(50),

Staffname_Order nvarchar(50),

)


insert into ProductList(stt, listname)

values(1,'dm1'),

(2,'dm2'),

(3,'dm3'),

(4,'dm4'),

(5,'dm5')

insert into BeverageType(stt, beveragename)

values(1,'cafe1','dm1'),

(2,'cafe2','dm3'),

(3,'cafe3','dm4'),

(4,'cafe4','dm2'),

(5,'cafe5','dm5')

insert into Staff(stt, staffname)

values(1,'Tran Van A'),

(2,'Tran Van B'),

(3,'Tran Van C'),

(4,'Tran Van D'),

(5,'Tran Van E')

insert into Bills(Stt_Don_Hang, Staffname_Order)

values(1, 'Tran Van D'),

(2, 'Tran Van C'),

(3, 'Tran Van E'),

(4, 'Tran Van B'),

(5, 'Tran Van A')

insert into Customer(Customername, Staffname_Order)

values('Nguyen Hoang A', 'Tran Van A'),

('Nguyen Hoang B', 'Tran Van B'),

('Nguyen Hoang C', 'Tran Van C'),

('Nguyen Hoang D', 'Tran Van C'),

('Nguyen Hoang E', 'Tran Van D')


create clustered index CI_Bills_StaffnameOrder on Bills (Staffname_Order)

Đã sao chép!!!