gpt4 book ai didi

mysql - 具有多个值的 SQL 列

转载 作者:行者123 更新时间:2023-12-01 00:18:41 27 4
gpt4 key购买 nike

我想知道我们如何在一个 sql 列中存储多个值,或者哪种是在一个 sql 列中存储值的最佳方式。

考虑在电影表中,一部电影将有多个流派
例如,
类型:“ Action 、冒险、奇幻”
类型:“冒险、剧情、奇幻、惊悚”

这是在数据库中存储流派值的最佳方式。

最佳答案

这是一个经典的n 到m 关系。它是这样工作的

movies table
------------
id
name
...


genres table
------------
id
name


movie_genres table
------------------
movie_id
genre_id

movie_genres 表然后包含电影的每种类型的一条记录。示例:

movie_genres
------------
movie_id | genre_id
1 | 1
1 | 2
1 | 13

要获取电影的类型,请执行以下操作:

select g.name as genre_name
from genres g
join movie_genres mg on mg.genre_id = g.id
join movies m on m.id = mg.movie_id
where m.name = 'star wars'

关于mysql - 具有多个值的 SQL 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41239364/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com