首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL多表查询工作慢

SQL多表查询工作慢
EN

Stack Overflow用户
提问于 2013-07-30 13:12:44
回答 2查看 213关注 0票数 0

我有四张桌子:

代码语言:javascript
复制
bag_of_words(
    ch_id,
    frequency,
    number,w_id
)

clinical_history(
    ch_complete,
    ch_id,p_id
)

patients(
    p_id,
    p_name
)

words(
    w_id,
    w_word
)

我有一张选好的单词的清单。我需要从表w_wordp_namenumberfreqencych_id中进行选择。

我有这个查询,但是它很慢,我需要它更快。

代码语言:javascript
复制
SELECT  
    w_word, 
    p_name, 
    number, 
    frequency, 
    bag_of_words.ch_id
FROM
    bag_of_words
LEFT JOIN 
    words 
ON 
    words.w_id=bag_of_words.w_id
LEFT JOIN 
    clinical_history 
ON 
    bag_of_words.ch_id=clinical_history.ch_id
LEFT JOIN 
    patients 
ON 
    patients.p_id=clinical_history.p_id
WHERE 
    words.w_word IN (',,,,,')
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-30 13:26:37

可以使用视图来提高查询性能。(检查:视图)。顺便问一下,你是在使用索引吗?索引还可以提高性能。

票数 0
EN

Stack Overflow用户

发布于 2013-07-30 13:18:14

尝试在w_word上设置一个索引,并确保您所连接的所有列都有索引。

如果您仍然得到非常慢的查询,请尝试消除连接,找出查询的哪一部分是导致慢速下降的原因。然后集中精力优化这一点。

有很多工具可以用来分析单个查询,看看需要做些什么来加快速度。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17948029

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档