首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >我的MySQL查询有什么问题?

我的MySQL查询有什么问题?
EN

Stack Overflow用户
提问于 2018-07-23 07:43:32
回答 2查看 0关注 0票数 0

我没有收到提示报错,可能只是一个小的问题。

代码语言:txt
复制
EXPLAIN
SELECT
a.nid,
a.title,
a.uid,
b.parent,
b.weight,
c.name,
d.value
FROM table1 AS a INNER JOIN table2 AS b ON a.vid = b.vid AND a.status = 1
INNER JOIN table3 AS c ON c.uid = a.uid
INNER JOIN table4 AS d ON d.content_id = a.nid AND d.value_type = 'percent' AND d.function = 'average'

当我查看所引用的表时,从表4中它只应该选择“value”字段,但是所有的内容都被调用了

代码语言:txt
复制
id  select_type     table   type      possible_keys                                   key     key_len   ref                   rows  Extra
1   SIMPLE          a     ref     PRIMARY,vid,status,uid,node_status_type,nid   status  4         const                 1    
1   SIMPLE          b     eq_ref    PRIMARY                                         PRIMARY 4         databasename.a.vid    1    
1   SIMPLE          c     eq_ref    PRIMARY                                         PRIMARY 4         databasename.a.uid    1   Using where
1   SIMPLE          d     ALL     NULL                                          NULL      NULL      NULL                  2     Using where

有谁能帮我解决这个问题吗?

EN

回答 2

Stack Overflow用户

发布于 2018-07-23 16:38:37

ALL表示所有行,而不是所有列。

票数 0
EN

Stack Overflow用户

发布于 2018-07-23 16:54:21

需要考虑d.value_type和d.function是否为索引字段。

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

https://stackoverflow.com/questions/-100000392

复制
相关文章

相似问题

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