目的是列出特定类型的所有电影,例如“ Adenture”。

我有两个表:

(1) movies
  id
  name
  rank
  year
  PRIMARY

(2) movies_genre
  genre
  movie_id


我使用以下命令加入了他们:

mysql> SELECT * FROM movies LEFT JOIN movies_genres on movies.id = movies_genres.movie_id;


结果是这样(缩短):

| id     | name        | year | rank | movie_id | genre     |
+--------+-------------+------+------+----------+-----------+
| 930905 | TestMovie   | 2000 |    4 |   9309   | Music     |
| 991327 | Get Swift   | 2016 |   10 |   991327 | Adventure |
| 991326 | CommunityO  | 2016 |   10 |   991326 | Comedy    |
| 192017 | Lil Mermaid | 1989 |  7.3 |   192017 | Family    |
| 192017 | Lil Mermaid | 1989 |  7.3 |   192017 | Animation |


那么我如何列出说“冒险”的电影

注意:我是sql的新手,并且已经接受了一些困难的实践。我花了很多时间在这里,却一无所获,这是我的最后选择。

谢谢。

最佳答案

如注释中所述,您正在寻找WHERE语句。

SELECT * FROM movies
LEFT JOIN movies_genres
ON movies.id = movies_genres.movie_id
WHERE movies_genres.genre = "Adventure"


参考:https://www.w3schools.com/sql/sql_where.asp

10-07 22:37