2. Bài tập
Phần A: Truy vấn cơ bản
- Hiển thị tất cả các mặt hàng có giảm giá
<= 10%
- Hiện thị tất cả các mặt hàng không có giảm giá
- Hiển thị tất cả các mặt hàng có số lượng tồn kho
<= 5
- Hiển thị tất cả các mặt hàng có Giá bán sau khi đã giảm giá
<= 100.000
- Hiện thị tất cả các mặt hàng thuộc danh mục CPU, RAM
- Hiển thị tất cả các khách hàng có địa chỉ ở
Quận Hải Châu
- Hiển thị tất cả các khách hàng có địa chỉ ở Quận Hải Châu hoặc Quận Thanh Khê
- Hiển thị tất cả các khách hàng có năm sinh
1990
. - Hiển thị tất cả các khách hàng có tuổi trên
60
. - Hiển thị tất cả các khách hàng có tuổi
từ 20 đến 30
. - Hiển thị tất cả các khách hàng có sinh nhật là hôm nay. Gợi ý:
dùng hàm GETDATE(), MONTH(), DAY()
- Hiển thị tất cả các đơn hàng có trạng thái là
COMPLETED
- Hiển thị tất cả các đơn hàng có trạng thái là
COMPLETED
trongngày hôm nay
- Hiển thị tất cả các đơn hàng chưa hoàn thành trong
tháng này
- Hiển thị tất cả các đơn hàng có trạng thái là
CANCELED
- Hiển thị tất cả các đơn hàng có trạng thái là
CANCELED
trongngày hôm nay
- Hiển thị tất cả các đơn hàng có trạng thái là
COMPLETED
trongtháng này
- Hiển thị tất cả các đơn hàng có trạng thái là
COMPLETED
trongtháng 1 năm 2021
- Hiển thị tất cả các đơn hàng có trạng thái là
COMPLETED
trongnăm 2021
- Hiển thị tất cả các đơn hàng có hình thức thanh toán là
CASH
- Hiển thị tất cả các đơn hàng có hình thức thanh toán là
CREADIT CARD
- Hiển thị tất cả các đơn hàng có địa chỉ giao hàng là
Hà Nội
- Hiển thị tất cả các nhân viên có sinh nhật là
tháng này
- Hiển thị tất cả các nhà cung cấp có tên là:
(SONY, SAMSUNG, TOSHIBA, APPLE)
- Hiển thị tất cả các nhà cung cấp không có tên là:
(SAMSUNG, APPLE)
- Hiển thị tất cả các nhà cung cấp có địa chỉ ở Quận Hải Châu và Quận Thanh Khê.
- Hiển thị tất cả các nhà cung cấp có địa chỉ ở Quận Hải Châu hoặc Quận Thanh Khê.
- Hiển thị tất cả các khách hàng có sinh nhật là
ngày hôm nay
. - Hiển thị xem có bao nhiêu mức giảm giá khác nhau.
- Hiển thị xem có bao nhiêu mức giảm giá khác nhau và số lượng mặt hàng có mức giảm giá đó.
- Hiển thị xem có bao nhiêu mức giảm giá khác nhau và số lượng mặt hàng có mức giảm giá đó, sắp xếp theo số lượng giảm giá giảm dần.
- Hiển thị xem có bao nhiêu mức giảm giá khác nhau và số lượng mặt hàng có mức giảm giá đó, sắp xếp theo số lượng giảm giá tăng dần, chỉ hiển thị các mức giảm giá có số lượng mặt hàng >= 5
- Hiển thị xem có bao nhiêu mức tuổi khác nhau của khách hàng và số lượng khách hàng có mức tuổi đó, sắp xếp theo số lượng khách hàng tăng dần.
- Hiển thị xem có bao nhiêu mức tuổi khác nhau của nhân viên và số lượng nhân viên có mức tuổi đó, sắp xếp theo số lượng nhân viên giảm dần.
- Hiển thị số lượng đơn hàng theo từng ngày khác nhau sắp xếp theo số lượng đơn hàng giảm dần.
- Hiển thị số lượng đơn hàng theo từng tháng khác nhau sắp xếp theo số lượng đơn hàng giảm dần.
- Hiển thị số lượng đơn hàng theo từng năm khác nhau sắp xếp theo số lượng đơn hàng giảm dần.
- Hiển thị số lượng đơn hàng theo từng năm khác nhau sắp xếp theo số lượng đơn hàng giảm dần, chỉ hiển thị các năm có số lượng đơn hàng
>= 5
.
Phần B: Gọi thủ tục
tip
Để gọi thủ tục trong SQL Server, bạn sử dụng câu lệnh EXECUTE
hoặc EXEC
.
Và truyền danh sánh các tham số của thủ tục.
- Hiển thị tất cả các mặt hàng có giảm giá trong khoảng
@MinDiscount
và@MaxDiscount
, tên thủ tục là:usp_Products_GetByDiscount
EXECUTE [dbo].[usp_Products_GetByDiscount] @MinDiscount = 5, @MaxDiscount = 50
hoặc
EXECUTE [dbo].[usp_Products_GetByDiscount] 5, 50
- Hiển thị tất cả các mặt hàng có số lượng tồn kho trong khoảng
@MinStock
và@MaxStock
, tên thủ tục là:usp_Products_GetByStock
- Hiển thị tất cả các mặt hàng có Giá bán sau khi đã giảm giá
<= @Total
, tên thủ tục là:usp_Products_GetByTotal
- Hiển thị tất cả các khách hàng có địa chỉ ở
@Address
, tên thủ tục là:usp_Customers_GetByAddress
- Hiển thị tất cả các khách hàng có năm sinh
@YearOfBirth
, tên thủ tục là:usp_Customers_GetByYearOfBirth
- Hiển thị tất cả các khách hàng có tuổi
từ @MinAge đến MaxAge
, tên thủ tục là:usp_Customers_GetByAge
- Hiển thị tất cả các khách hàng có sinh nhật là
@Month
,@Day
, tên thủ tục là:usp_Customers_GetByDateOfBirth