51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2376|回复: 3
打印 上一主题 下一主题

Mysql两表关联不使用索引的问题

[复制链接]
  • TA的每日心情
    擦汗
    3 天前
  • 签到天数: 527 天

    连续签到: 4 天

    [LV.9]测试副司令

    跳转到指定楼层
    1#
    发表于 2020-10-9 13:33:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    1测试积点
    Mysql两表关联不使用索引的问题
    两张表test_a,test_b结构和索引信息如下,通过主键inner join关联时,外表为什么不走索引呢?

    1. <p>create table test_a (
    2.   id int,
    3.   birthday date not null,
    4.   comment varchar (50) not null,
    5.   primary key test_a_pk (id),
    6.   index test_a_index (birthday)
    7. ) engine = innodb default charset = utf8;</p><p>create table test_b (
    8.   id int,
    9.   salary double not null,
    10.   struct varchar (50) not null,
    11.   primary key test_b_pk (id),
    12.   index test_b_index (salary)
    13. ) engine = innodb default charset = utf8;</p><p>mysql> show index from test_a\G
    14. *************************** 1. row ***************************
    15.         Table: test_a
    16.    Non_unique: 0
    17.      Key_name: PRIMARY
    18. Seq_in_index: 1
    19.   Column_name: id
    20.     Collation: A
    21.   Cardinality: 5375084
    22.      Sub_part: NULL
    23.        Packed: NULL
    24.          Null:
    25.    Index_type: BTREE
    26.       Comment:
    27. Index_comment:
    28. *************************** 2. row ***************************
    29.         Table: test_a
    30.    Non_unique: 1
    31.      Key_name: test_a_index
    32. Seq_in_index: 1
    33.   Column_name: birthday
    34.     Collation: A
    35.   Cardinality: 2728
    36.      Sub_part: NULL
    37.        Packed: NULL
    38.          Null:
    39.    Index_type: BTREE
    40.       Comment:
    41. Index_comment:
    42. 2 rows in set (0.00 sec)</p><p>mysql> show index from test_b\G
    43. *************************** 1. row ***************************
    44.         Table: test_b
    45.    Non_unique: 0
    46.      Key_name: PRIMARY
    47. Seq_in_index: 1
    48.   Column_name: id
    49.     Collation: A
    50.   Cardinality: 5291561
    51.      Sub_part: NULL
    52.        Packed: NULL
    53.          Null:
    54.    Index_type: BTREE
    55.       Comment:
    56. Index_comment:
    57. *************************** 2. row ***************************
    58.         Table: test_b
    59.    Non_unique: 1
    60.      Key_name: test_b_index
    61. Seq_in_index: 1
    62.   Column_name: salary
    63.     Collation: A
    64.   Cardinality: 943640
    65.      Sub_part: NULL
    66.        Packed: NULL
    67.          Null:
    68.    Index_type: BTREE
    69.       Comment:
    70. Index_comment:
    71. 2 rows in set (0.00 sec)</p>
    复制代码


    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    3 天前
  • 签到天数: 1801 天

    连续签到: 5 天

    [LV.Master]测试大本营

    2#
    发表于 2020-10-10 09:37:38 | 只看该作者
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    3 天前
  • 签到天数: 1516 天

    连续签到: 5 天

    [LV.Master]测试大本营

    3#
    发表于 2020-10-10 10:45:27 | 只看该作者
    检查下是否都做了索引
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2024-10-22 14:23
  • 签到天数: 1007 天

    连续签到: 1 天

    [LV.10]测试总司令

    4#
    发表于 2020-10-10 15:12:53 | 只看该作者
    可以参考这篇文章看下:https://q.cnblogs.com/q/129478/
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-18 01:43 , Processed in 0.064447 second(s), 21 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表