gpt4 book ai didi

ruby-on-rails - 第二个 foreign_key 加速查询

转载 作者:行者123 更新时间:2023-11-29 12:59:02 26 4
gpt4 key购买 nike

假设您为电视节目创建了一个 imdb 类型的网站。您有一个 Show,其中包含许多附加的 episodes 和一群 people

现在我通过contribution 表将people 链接到episodes - 但如果我想列出所有显示他们正在播放,我必须通过剧集。

由于此查询需要很长时间,所以我考虑将 show_id 添加到 contributions 表中。这是提高性能的常见做法还是我没有想到的另一种方法?

最佳答案

Since this query takes a long time

您是否运行过 SQL 解释计划来说明为什么会这样?正在运行的实际 SQL 查询是什么,您是否在其中执行诸如排序或运行子查询之类的操作?

如果我理解你的结构,它是这样的:

|people| n---1 |contribution| 1---n |episodes| n---1 |shows|

这种类型的 sql 选择:

select distinct s.name 
from shows s,
episodes e,
contribution c
where c.people_id = <id>
and c.episode_id = e.id
and e.show_id = s.id

应该真的没有性能问题,除非表上没有索引或表很大。

关于ruby-on-rails - 第二个 foreign_key 加速查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35311678/

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