sql - 如何查询数据库以返回某个演员演过的电影?
问题描述
数据库如下:
actors(PK(AID), name)
movies(PK(MID), name)
actor_role(FK(MID), FK(AID), rolename)
其中一个演员的名字是“查理卓别林”,我需要它来返回他演过的电影,我无法得到返回的查询。
我目前的查询是
select movie.name
from movies, actors
where actors.name = 'Charlie Chaplin'
它只返回所有电影,而不是他在其中表演的特定电影。
解决方案
我认为这是您的查询:
select M.name
from movies M
join actor_role AR on AR.MID = M.MID
join actors A on A.AID = AR.AID
where A.name = 'Charlie Chaplin'
推荐阅读
- css - Angular 2 多选仅显示静态占位符
- java - 使用 JFrame 和布局的 GUI 计算器
- typescript - 打字稿映射元组查找类型?
- python - 如何在python中多次遍历每个单词?
- python - 熊猫数据框在给定条件下查找第一个和最后一个元素并计算斜率
- coq - Coq: (a :: L1) = (b :: L2) ⇒ a = b ∧ L1 = L2?
- spring-boot - 在 Thymeleaf 片段中传递数组作为参数
- constructor - 如何从构造函数打印对象?
- java - 为什么我的代码中出现空指针异常错误?
- git - '.gitignore' 中的 'test/' 和 'test/**' 有什么区别?