基于mysql的sakila数据库脚本分析

本文深入分析了基于MySQL的sakila数据库的复杂查询,包括电影类别、语言、演员、库存等信息的查询。通过实例展示了如何获取电影详情、演员列表、消费记录等,并探讨了查询优化问题,如重复语句处理和子表传递。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本例是基于mysql的sakila数据库脚本的复杂查询分析,大家可以去mysql官网上下载此脚本;也可以进入我的资源页进行下载

关系图如下:

    

 

下面是查询的案例:

 1.查询某部电影的所属类别,语言

SELECT film.title AS '电影名称', category.name AS '种类名称', language.name AS '语言'  FROM film_category 
LEFT JOIN film  ON film_category.`film_id` = film.`film_id`   
LEFT JOIN `category` ON film_category.category_id = category.category_id
LEFT JOIN LANGUAGE ON film.language_id = language.language_id
WHERE film.title = 'ACADEMY DINOSAUR';

2.查询某部电影的演员有哪些

SELECT film.title AS '电影名称', CONCAT(actor.last_name, CONCAT(" ", actor.first_name)) AS '参与演员'
FROM film 
INNER JOIN film_actor
ON film.`film_id` = film_actor.`film_id`
INNER JOIN actor 
ON film_actor.`actor_id` = actor.`actor_id`
WHERE film.title = 'ACADEMY DINOSAUR';

3.查询某部电影的演员人数

SELECT film.title AS '电影名称', COUNT(film_actor.`actor_id`) AS '参演人数' FROM film 
INNER JOIN film_actor ON film.`film_id` = film_actor.`film_id`
WHERE film.title = 'ACADEMY DINOSAUR';

4.查询电影id,库存数

 

SELECT film.`film_id` AS '电影id', COUNT(inventory.`film_id`) AS '
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值