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

Đề thi Hệ quản trị cơ sở dữ liệu thực hành kỳ 1 năm học 2021-2022

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

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 5
Dung lượng 274 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Viết hàm nhận vào tham số country_id và đưa ra số lượt thuê đĩa phim đến từ quốc gia tương ứng DROP FUNCTION IF EXISTS country_inventory ; DELIMITER // CREATE FUNCTION country_inventoryc[r]

Trang 1

TailieuVNU.com

Website môn học

Vi NGHỆ

Nhà của tôi > Các khoá học của tôi > 2122l_INT3202_2 > 22 November - 28 November > Kiểm tra cuối kỳ thực hành Nhóm

2

Bắt đâu vào lúc

Trạng thái Kết thúc lúc Thời gian thực hiện

Điểm

Trang 2

Câu Hỏi 1 Hoàn thành ae

TailieuVNU.com Viết hàm nhận vào tham số country _i¡d và đưa ra số lượt thuê đĩa phim đến từ quốc gia tương ứng

DROP FUNCTION IF EXISTS country_inventory ;

DELIMITER //

CREATE FUNCTION country_inventory(c_id INT)

RETURNS INT

BEGIN

DECLARE total INT;

SELECT COUNT(*) INTO total

FROM rental

JOIN customer ON rental.customer_id = customer.customer_id

JOIN address ON customer.address_id = address.address_id

JOIN city ON address city_id = city.city_id

JOIN country ON city.country_id = country.country_id AND country.country_id = c_id

GROUP BY country.country_id;

return total:

END //

DELIMITER ;

Trang 3

Câu Hỏi 2 Hoàn thành vu

TailieuVNU.com

Thêm 1 trường mới tên là "Prior_level" vào bảng country, kiểu dữ liệu là INT, giá trị mặc định là 0 dùng dé

đánh dấu mức độ ưu tiên

Viết trigger thực hiện công việc sau: Với mỗi giao dịch cho thuê mới xảy ra, hãy đếm số lượt thuê đến từ

quốc gia tương ứng với vị khách vừa thuê và cập nhật giá trị Prior_level là 1 nếu quốc gia đó có số lượt >=

100 và nhỏ hơn 500, là 2 nếu số lượt >= 500 và nhỏ hơn 1000, và là 3 nếu số lượt >= 1000

ALTER TABLE country

add Prior_level int DEFAULT 0;

DELIMITER //

CREATE TRIGGER after_insert_rental AFTER INSERT ON rental

FOR EACH ROW

BEGIN

DECLARE cnt_id varchar(50)

SELECT country_id INTO cnt_id

FROM country JOIN city ON country.country_id = city.country_id

JOIN address a ON city.city_id = a.city_id

JOIN customer c ON a.address_id = c.address_id

WHERE customer.customer_id = new.customer_id

Trang 4

Câu Hỏi 3 Hoàn thành 7

TailieuVNU.com

Viết truy vấn đưa ra số lượng phim tham gia tương ứng của các diễn viên có first_name bắt đầu là A hoặc

J va last_name bat dau bang A hoặc B Làm thé nào dé tối ưu truy van 2 Viết lệnh bạn đã dùng để tối ưu

So sánh độ phức tạp trước và sau khi tối ưu truy vấn (đính kèm ảnh kết quả độ phức tạp của truy vấn

trước và sau khi tối ưu)

EXPLAIN SELECT COUNT(*), actor.actor_id, concat(actor.first_name," ", actor.last_name) AS fullname

FROM actor

JOIN film_actor on actor.actor_id = film_actor.actor_id

WHERE (actor.first_name LIKE "A%" OR actor.first_name LIKE "J%") AND (actor.last_name LIKE "A%" OR

actor.last_name LIKE "B%")

GROUP BY actor.actor_id

ORDER BY actor actor_id’ DESC;

CREATE index actor_firstname on actor(first_name(1));

sau index 29(18%) *13

trước index 200”13

—) Ảnh chụp màn hình 2021-11-23 175657.png

Trang 5

Câu Hỏi 4 Hoàn thành 7

TailieuVNU.com

Xuất kết quả của truy ván lấy ra top 20 quốc gia có lượt thuê nhiều nhát ra file bên ngoài đặt tên là

"top20_countries.txt" (các trường cân lấy là country_id, country (tên quốc gia), số lượt thuê từ

quốc gia) Các trường được ngăn cach boi dau ',', méi row của bảng là 1 dòng trong file, các giá trị

của các trường được bọc bằng dấu nháy kép ' " '

VD: "1","England","100"

LUU Y: NHO’ DINH KEM FILE TEXT KET QUA VAO BAI LAM

SELECT country.country_id, country.country, COUNT(*) as rental_count

FROM rental

JOIN customer ON rental.customer_id = customer.customer_id

JOIN address ON customer.address_id = address.address_id

JOIN city ON address.city_id = city.city_id

JOIN country ON city.country_id = country.country_id

GROUP BY country.country_id

ORDER BY rental_count DESC LIMIT 20

INTO OUTFILE '/nam_ 3/hqtcsdl/top20_ countries.txf

FIELDS TERMINATED BY '' ENCLOSED BY ""

LINES TERMINATED BY ‘\n’;

top20_countries.txt

Ngày đăng: 29/03/2022, 04:59

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w