SQL告诉您不期望JOIN的原因及问题讨论

【解决方案1】:

问题是你这里的括号语法是错误的,而不是

INSERT INTO film_new 
(SELECT title, rental_rate,length,film_id,length,release_year FROM film) 
JOIN film_actor ON film.film_id = film_actor.film_id 
JOIN actor ON film_actor.actor_id = actor.actor_id;

你应该完全封闭内部查询,比如

INSERT INTO film_new 
(SELECT (title, rental_rate,length,film_id,length,release_year) FROM film
JOIN film_actor ON film.film_id = film_actor.film_id 
JOIN actor ON film_actor.actor_id = actor.actor_id)

SQL 告诉您不期望 JOIN 的原因是因为它不是内部查询的一部分(由于您放置括号的方式),而是在外部查询中,而外部查询又没有 FROM 子句,并且因此不接受任何加入。

【问题讨论】:

【解决方案2】:

删除所有括号!

INSERT INTO film_new
SELECT title, rental_rate, length, film_id, length, release_year
FROM film
JOIN film_actor ON film.film_id = film_actor.film_id
JOIN actor ON film_actor.actor_id = actor.actor_id

我刚刚重新格式化了您的查询以使其可读,并删除了括号以使其在语法上正确。

但是,您的选择列看起来不正确,尤其是您似乎没有从连接的表中选择任何内容。

【问题讨论】:

© 版权声明
THE END
喜欢就支持一下吧
点赞195赞赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容