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)
Mysql 和Oracle rows 区别的更多相关文章
- 转载文章 MySQL与Oracle的区别
MySQL与Oracle的区别 1. Oracle是大型数据库而Mysql是中小型数据库,Oracle市场占有率达40%,Mysql只有20%左右,同时Mysql是开源的而Oracle价格非常高 ...
- mysql和 oracle 的区别
垂直拆分: 把一个数据库中不同业务单元的数据分到不同的数据库里面.水平拆分: 根据一定的规则把同一业务单元的数据拆分到多个数据库中. 读写分离 主:写 从:查 ==================== ...
- MySQL与Oracle的区别
1.语法上的区别 变量类型定义.IN OUT的位置.变量定义的位置.游标的位置.异常的位置: 2.MySQL没有 return 关键字,采用leave label的方式结束循环或跳出存储 3.异常处 ...
- 开发中mysql和oracle的区别
首先就不描述mysql与oracle在整个数据库系统上的区别了,仅从程序员开发的角度来说: 1.主键: mysql一般会用到一个自增的属性,例如设置一个id字段,类型设置为auto increment ...
- MySQL和Oracle的区别与不同
一.mysql与Oracle的相同点: 1.都是关系型数据库管理系统(MySQL开放源码) 2.都是目前很流行的数据库(Oracle以分布式为核心): 二.MySQL.Oracle各自特点: 1.Or ...
- MySql与Oracle的区别总结
在平时工作中使用这两个数据库的时候要多一些,这两数据库的使用方面存在的一些各自不同的地方,许多面试官也会问这两个的区别.所以,凭着自己的一些经验个感触,来说说这二者的区别. 使用的群众:MySql中小 ...
- MySql和Oracle数据库区别
Oracle与mysql区别: 1.Oracle有表空间,mysql没有表空间. 2.mysql的char类型取值范围0-255字节,varchar为0-65535字节 3.oracle的char类型 ...
- MySQL和Oracle的区别
由于SQL Server不常用,所以这里只针对MySQL数据库和Oracle数据库的区别 (1) 对事务的提交 MySQL默认是自动提交,而Oracle默认不自动提交,需要用户手动提交,需要在写 ...
- mysql与Oracle的区别:
1. Oracle是大型数据库而Mysql是中小型数据库,Oracle市场占有率达40%,Mysql只有20%左右,同时Mysql是开源的而Oracle价格非常高. 2. Oracle支持大并发,大 ...
随机推荐
- Swift实战-QQ在线音乐(第一版)
//一.*项目准备 1.QQ音乐App 界面素材:(我使用PP助手,将QQ音乐App备份,解压ipa文件 即可得到里面的图片素材) 2.豆瓣电台接口:"http://douban.fm/j/ ...
- Lucene核心--构建Lucene搜索(上篇,理论篇)
2.1构建Lucene搜索 2.1.1 Lucene内容模型 一个文档(document)就是Lucene建立索引和搜索的原子单元,它由一个或者多个字段(field)组成,字段才是Lucene的真实内 ...
- 06-OC分类、协议、ARC
目录: 一.分类 二.扩展 三.协议 四.内存管理ARC 回到顶部 一.分类 1 分类就是类的补充和扩展,本质上是类的一部分,把一个类分成若干部分,每个部分就是分类. 2 语法 * 文件中的语法@in ...
- 【译】在Asp.Net中操作PDF – iTextSharp - 操作图片
原文 [译]在Asp.Net中操作PDF – iTextSharp - 操作图片 作为我的iTextSharp系列的文章的第七篇,开始探索使用iTextSharp在PDF中操作图片,理解本篇文章需要看 ...
- textarea内容有换行时存入数据库丢失问题的解决 (转载)
http://blog.csdn.net/zhang_j_h/article/details/44563167 存入: function GetInputData(id, cmd) { var pos ...
- 关于如何实现程序一天只启动一次的想法(C++实现)
问题描述: 我们在程序开发当中,经常会遇到某些子程序需要实现一天只启动一次的功能,该功能实现的方法有很多种,其原理都是通过记录标记为来实现的.本次要分享的也是利用程序标记为来实现的,而且只需要使用一个 ...
- 基于visual Studio2013解决面试题之1402选择排序
题目
- cocos2d-x 实现clash of clans多点聚焦缩放场景
猴子原创,欢迎转载.转载请注明: 转载自Cocos2D开发网–Cocos2Dev.com,谢谢! 原文地址: http://www.cocos2dev.com/?p=434 都是以前写的一些效果,整理 ...
- MSSQL - 存储过程Return返回值
1.存储过程中不使用外部参数. 存储过程: SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ========================== ...
- Eclipse用法和技巧一:还原视图和编辑器
链接地址:http://blog.csdn.net/maybe_windleave/article/details/8763744 在实际使用eclipse过程中,由于经常关闭或者打开视图,某一刻你会 ...