zoukankan      html  css  js  c++  java
  • Mysql 和Oracle rows 区别

    mysql>  explain select t1.* from t2 ,t1 where t2.id=t1.id and t2.id<3;
    +----+-------------+-------+------+---------------+------+---------+------+--------+----------------------------------------------------+
    | id | select_type | table | type | possible_keys | key  | key_len | ref  | rows   | Extra                                              |
    +----+-------------+-------+------+---------------+------+---------+------+--------+----------------------------------------------------+
    |  1 | SIMPLE      | t2    | ALL  | NULL          | NULL | NULL    | NULL |    134 | Using where                                        |
    |  1 | SIMPLE      | t1    | ALL  | NULL          | NULL | NULL    | NULL | 392625 | Using where; Using join buffer (Block Nested Loop) |
    +----+-------------+-------+------+---------------+------+---------+------+--------+----------------------------------------------------+
    2 rows in set (0.00 sec)
    
    mysql> select count(*) from t2;
    +----------+
    | count(*) |
    +----------+
    |      134 |
    +----------+
    1 row in set (0.00 sec)
    
    
    mysql> select count(*) from t2 where id<3;
    +----------+
    | count(*) |
    +----------+
    |      128 |
    +----------+
    1 row in set (0.00 sec)
    驱动表 一般返回较少的记录:
    
    
    
    mysql> explain select t1.* from (select * from t2 where id<3) t2 ,t1 where t2.id=t1.id;
    +----+-------------+------------+------+---------------+-------------+---------+--------------+--------+-------------+
    | id | select_type | table      | type | possible_keys | key         | key_len | ref          | rows   | Extra       |
    +----+-------------+------------+------+---------------+-------------+---------+--------------+--------+-------------+
    |  1 | PRIMARY     | t1         | ALL  | NULL          | NULL        | NULL    | NULL         | 392625 | Using where |
    |  1 | PRIMARY     | <derived2> | ref  | <auto_key0>   | <auto_key0> | 5       | DEVOPS.t1.id |     10 | NULL        |
    |  2 | DERIVED     | t2         | ALL  | NULL          | NULL        | NULL    | NULL         |    134 | Using where |
    +----+-------------+------------+------+---------------+-------------+---------+--------------+--------+-------------+
    3 rows in set (0.00 sec)
    
    是预估的需要扫描的行数
    不是返回的行数
    这就是两者的区别
    
    Oracle 是预估返回的行数
    
    MySQL 是预估扫描的行数,显示需要扫描的行数
    
    mysql> analyze table t2;
    +-----------+---------+----------+----------+
    | Table     | Op      | Msg_type | Msg_text |
    +-----------+---------+----------+----------+
    | DEVOPS.t2 | analyze | status   | OK       |
    +-----------+---------+----------+----------+
    1 row in set (0.17 sec)
    
    
    
    
    mysql>  explain select t1.* from t2 ,t1 where t2.id=t1.id and t2.id=3;
    +----+-------------+-------+------+---------------+------+---------+------+--------+----------------------------------------------------+
    | id | select_type | table | type | possible_keys | key  | key_len | ref  | rows   | Extra                                              |
    +----+-------------+-------+------+---------------+------+---------+------+--------+----------------------------------------------------+
    |  1 | SIMPLE      | t2    | ALL  | NULL          | NULL | NULL    | NULL |  16192 | Using where                                        |
    |  1 | SIMPLE      | t1    | ALL  | NULL          | NULL | NULL    | NULL | 392625 | Using where; Using join buffer (Block Nested Loop) |
    +----+-------------+-------+------+---------------+------+---------+------+--------+----------------------------------------------------+
    2 rows in set (0.00 sec)
    
    mysql> select count(*) from t2;
    +----------+
    | count(*) |
    +----------+
    |    16390 |
    +----------+
    1 row in set (0.01 sec)
    
    mysql> select count(*) from t2 where id=3;
    +----------+
    | count(*) |
    +----------+
    |        6 |
    +----------+
    1 row in set (0.01 sec)

  • 相关阅读:
    WSP部署错误—SharePoint管理框架中的对象“SPSolutionLanguagePack Name=0”依赖其他不存在的对象
    Elevate Permissions To Modify User Profile
    Error with Stsadm CommandObject reference not set to an instance of an object
    ASP.NET MVC3添加Controller时没有Scaffolding options
    测试使用Windows Live Writer写日志
    配置TFS 2010出现错误—SQL Server 登录的安全标识符(SID)与某个指定的域或工作组帐户冲突
    使用ADO.NET DbContext Generator出现错误—Unable to locate file
    CSS
    HTML DIV标签
    数据库
  • 原文地址:https://www.cnblogs.com/zhaoyangjian724/p/6199894.html
Copyright © 2011-2022 走看看