我正在尝试编写一个查询,该查询将返回SAKILA数据库中所有具有法语作为原始语言的电影。预期的结果是0行。

当我使用language_id查找以法语作为语言的标题时,我得到了预期的结果:

SELECT title, release_year FROM sakila.film WHERE language_id =5;


然而,
我试图在不使用literals (language_id)的情况下获得此结果,而是将两个表连接起来以选择电影的原始语言。

当我写:

SELECT title, release_year
FROM sakila.film, sakila.language
WHERE language.name = 'french';


我得到所有行。

最佳答案

如果您不想使用连接,则需要在其中添加一个条件。

SELECT title, release_year
FROM sakila.film, sakila.language
WHERE language.name = 'french' and film.language_id = language.id

关于mysql - 联接表时,SQL结果不一致,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39583767/

10-10 12:27