【发布时间】:2020-08-30 05:03:48
【问题描述】:
我需要创建一个新表,其中包含 Johnny Depp 和 Helena Bonham Caster 主演的电影的标题。 我有这些表: 电影:(ID、标题和年份) 星星:(Movie_ID,Person_ID) 人:(ID、姓名和出生年份)
CREATE TABLE johnny_helena (title TEXT);
INSERT INTO johnny_helena (title)
SELECT title
FROM movies
WHERE id IN (SELECT movie_id FROM stars WHERE person_id IN (SELECT id FROM people WHERE name = 'Johnny Depp') AND person_id IN (SELECT id FROM people WHERE name = 'Helena Bonham Caster'))
当我执行此代码时,我收到一个包含 0 行但应该是 6 行的表。 我是新的 em SQL,我相信我犯了一个愚蠢的错误。那么,我该如何解决这个错误呢? 谢谢。
【问题讨论】:
-
请添加输入数据、预期结果和标签数据库
-
为什么有这么多内部查询?为什么不做一个简单的
JOIN? -
当你问我添加de输入数据是指我正在处理的数据库?而且我没有使用JOIN,因为我昨天真的开始学习SQL,所以我需要学习很多东西。
标签: sql join group-by sql-insert create-table