同时max(),min()取最大 最小值 在mysql和Oracle中的差别
来源:互联网 发布:2017省市区数据库json 编辑:程序博客网 时间:2024/05/23 02:00
mysql 可以同时取最大值和最小值:mysql> explain select max(uuid) from p300;+----+-------------+-------+------+---------------+------+---------+------+------+------------------------------+| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |+----+-------------+-------+------+---------------+------+---------+------+------+------------------------------+| 1 | SIMPLE | NULL | NULL | NULL | NULL | NULL | NULL | NULL | Select tables optimized away |+----+-------------+-------+------+---------------+------+---------+------+------+------------------------------+1 row in set (0.02 sec)mysql> explain select max(uuid),min(uuid) from p300;+----+-------------+-------+------+---------------+------+---------+------+------+------------------------------+| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |+----+-------------+-------+------+---------------+------+---------+------+------+------------------------------+| 1 | SIMPLE | NULL | NULL | NULL | NULL | NULL | NULL | NULL | Select tables optimized away |+----+-------------+-------+------+---------------+------+---------+------+------+------------------------------+1 row in set (0.00 sec)SQL> desc dba_objects; 名称 是否为空? 类型 ----------------------------------------- -------- ---------------------------- OWNER VARCHAR2(30) OBJECT_NAME VARCHAR2(128) SUBOBJECT_NAME VARCHAR2(30) OBJECT_ID NUMBER DATA_OBJECT_ID NUMBER OBJECT_TYPE VARCHAR2(19) CREATED DATE LAST_DDL_TIME DATE TIMESTAMP VARCHAR2(19) STATUS VARCHAR2(7) TEMPORARY VARCHAR2(1) GENERATED VARCHAR2(1) SECONDARY VARCHAR2(1) NAMESPACE NUMBER EDITION_NAME VARCHAR2(30)SQL> create table t100 as select * from dba_objects;表已创建。SQL> insert into t100 select * from t100;已创建96143行。SQL> insert into t100 select * from t100;已创建192286行。SQL> insert into t100 select * from t100;已创建384572行。SQL> insert into t100 select * from t100;已创建769144行。SQL> insert into t100 select * from t100;已创建1538288行。SQL> commit;提交完成。BEGIN DBMS_STATS.GATHER_TABLE_STATS(ownname => 'SYS', tabname => 'T100', estimate_percent => 100, method_opt => 'for all columns size repeat', no_invalidate => FALSE, degree => 8, cascade => TRUE);END;/ SQL> create index t100_idx1 on t100(object_id);索引已创建。SQL> explain plan for select max(object_id) from t100;已解释。SQL> select * from table(dbms_xplan.display());PLAN_TABLE_OUTPUT--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Plan hash value: 1310084087----------------------------------------------------------------------------------------| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |----------------------------------------------------------------------------------------| 0 | SELECT STATEMENT | | 1 | 5 | 3 (0)| 00:00:01 || 1 | SORT AGGREGATE | | 1 | 5 | | || 2 | INDEX FULL SCAN (MIN/MAX)| T100_IDX1 | 1 | 5 | 3 (0)| 00:00:01 |----------------------------------------------------------------------------------------已选择9行。SQL> explain plan for select min(object_id) from t100;已解释。SQL> select * from table(dbms_xplan.display());PLAN_TABLE_OUTPUT--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Plan hash value: 1310084087----------------------------------------------------------------------------------------| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |----------------------------------------------------------------------------------------| 0 | SELECT STATEMENT | | 1 | 5 | 3 (0)| 00:00:01 || 1 | SORT AGGREGATE | | 1 | 5 | | || 2 | INDEX FULL SCAN (MIN/MAX)| T100_IDX1 | 1 | 5 | 3 (0)| 00:00:01 |----------------------------------------------------------------------------------------已选择9行。SQL> explain plan for select max(object_id),min(object_id) from t100;已解释。SQL> select * from table(dbms_xplan.display());PLAN_TABLE_OUTPUT--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Plan hash value: 1916772590---------------------------------------------------------------------------| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |---------------------------------------------------------------------------| 0 | SELECT STATEMENT | |1 |5 | 11737 (1)| 00:02:21 || 1 | SORT AGGREGATE | |1 |5 | | || 2 | TABLE ACCESS FULL| T100 | 3076K| 14M| 11737 (1)| 00:02:21 |---------------------------------------------------------------------------已选择9行。此时同时取最大值和最小值,在Oracle一次只能一个方向扫描索引,所以无法走索引
0 0
- 同时max(),min()取最大 最小值 在mysql和Oracle中的差别
- python找到二维数据矩阵中的最大最小值直接使用min、max函数
- php max() min() 返回最大值和最小值
- js数组最大值max和最小值min
- matlab max/min/median函数用法以及自定义函数求最大最小值和中位数
- oracle 中的几个函数AVG (平均) COUNT (计数) MAX (最大值) MIN (最小值) SUM (总合)
- Collection.max min最大最小值 集合(list set map)
- MATLAB中求最大/最小值max/min函数
- matlab中的max和min
- Oracle 多字段取最大/最小值函数
- Oracle 多字段取最大/最小值函数
- 同时查找数组中最大和最小值
- mysql group by 取最大或最小值
- oracle max()函数和min()函数
- oracle max()函数和min()函数
- oracle max()函数和min()函数
- oracle max()函数和min()函数
- oracle max()函数和min()函数
- 使用ajax来进行前后传送数据(django框架、Python语言)
- nohttp阅读笔记
- 《机器学习实战》之kNN-笔记1
- 银行系统的开发精华1
- 使用RestTemplate Spring安全认证
- 同时max(),min()取最大 最小值 在mysql和Oracle中的差别
- 随便——单身狗的圣诞节
- 程序员的七大痛点
- 特征处理(Feature Processing)
- 开源代码分析
- 引用
- rxjava的SubscribeOn流程的关键代码
- ML_1 supervised learning and unsupervised learning
- 线性表