[20120319]一条sql语句的优化.txt

前天检查数据库,发现一天sql语句执行如下:
SELECT MAX (undrug_code)   FROM undrug_info  WHERE SUBSTR (undrug_code, 1, 1) = 'F';

undrug_code是表undrug_info的主键.开始看见这个语句,感觉这样写不好,我想像的执行计划,全扫描索引,然后sort aggregate,找到最大值.

不如这样写:
SELECT MAX (undrug_code)   FROM undrug_info  WHERE undrug_code like 'F%';

对比两个执行计划,发现前面的语句逻辑读更少.仅仅20个逻辑读,而第2个语句逻辑读23个.

PLAN_TABLE_OUTPUT
-------------------------------------
SQL_ID  akhuqz90jahvq, child number 0
-------------------------------------
SELECT MAX (undrug_code) FROM undrug_info WHERE SUBSTR (undrug_code, 1,1) = 'F'
Plan hash value: 1995159169
---------------------------------------------------------------
| Id  | Operation                   | Name           | E-Rows |
---------------------------------------------------------------
|   1 |  SORT AGGREGATE             |                |      1 |
|   2 |   FIRST ROW                 |                |    234 |
|*  3 |    INDEX FULL SCAN (MIN/MAX)| PK_UNDRUG_INFO |    234 |
---------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
   3 - filter(SUBSTR("UNDRUG_CODE",1,1)='F')

PLAN_TABLE_OUTPUT
-------------------------------------
SQL_ID  bpb7sh9xq2rqw, child number 0
-------------------------------------
SELECT MAX (undrug_code) FROM undrug_info WHERE undrug_code like 'F%'
Plan hash value: 4281577230
-----------------------------------------------------
| Id  | Operation         | Name           | E-Rows |
-----------------------------------------------------
|   1 |  SORT AGGREGATE   |                |      1 |
|*  2 |   INDEX RANGE SCAN| PK_UNDRUG_INFO |    475 |
-----------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
   2 - access("UNDRUG_CODE" LIKE 'F%')
       filter("UNDRUG_CODE" LIKE 'F%')

--可以发现,第1个执行计划走的是 INDEX FULL SCAN (MIN/MAX),很明显第1个执行计划逻辑读的数量取决于扫描索引的undrug_code的最大值到出现
满足SUBSTR (undrug_code, 1,1) = 'F'的键值停止的块数.而第2个执行计划走的是INDEX RANGE SCAN,逻辑读的数量取决于扫描索引的undrug_code
like 'F%'满足此条件的块数.

知道这些,加上取最大值的语句有一些特殊,根据以上分析,如果语句修改如下就能减少逻辑读:

SELECT MAX (undrug_code)   FROM undrug_info  WHERE SUBSTR (undrug_code, 1, 1) = 'F' and undrug_code

PLAN_TABLE_OUTPUT
-------------------------------------
SQL_ID  8ndrgww40s2kc, child number 0
-------------------------------------
SELECT MAX (undrug_code)   FROM undrug_info  WHERE SUBSTR (undrug_code,
1, 1) = 'F' and undrug_code

Plan hash value: 550870910
----------------------------------------------------------------
| Id  | Operation                    | Name           | E-Rows |
----------------------------------------------------------------
|   1 |  SORT AGGREGATE              |                |      1 |
|   2 |   FIRST ROW                  |                |      5 |
|*  3 |    INDEX RANGE SCAN (MIN/MAX)| PK_UNDRUG_INFO |      5 |
----------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
   3 - access("UNDRUG_CODE"
       filter(SUBSTR("UNDRUG_CODE",1,1)='F')

或者这样:
SELECT MAX (undrug_code) FROM undrug_info WHERE undrug_code >='F' and  undrug_code

PLAN_TABLE_OUTPUT
------------------------------------------------------------------------
SQL_ID  ach8g0ct3r7k0, child number 0
-------------------------------------
SELECT MAX (undrug_code) FROM undrug_info WHERE undrug_code >='F' and undrug_code
Plan hash value: 550870910
----------------------------------------------------------------
| Id  | Operation                    | Name           | E-Rows |
----------------------------------------------------------------
|   1 |  SORT AGGREGATE              |                |      1 |
|   2 |   FIRST ROW                  |                |    475 |
|*  3 |    INDEX RANGE SCAN (MIN/MAX)| PK_UNDRUG_INFO |    475 |
----------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
   3 - access("UNDRUG_CODE"='F')

或者这样:
SELECT MAX (undrug_code) FROM undrug_info WHERE undrug_code >='F' and  undrug_code<='F'||chr(255);

PLAN_TABLE_OUTPUT
------------------------------------------------------------------------------------
SQL_ID  2yjg9nmgb6bt8, child number 0
-------------------------------------
SELECT MAX (undrug_code) FROM undrug_info WHERE undrug_code >='F' and
undrug_code<='F'||chr(255)

Plan hash value: 550870910
----------------------------------------------------------------
| Id  | Operation                    | Name           | E-Rows |
----------------------------------------------------------------
|   1 |  SORT AGGREGATE              |                |      1 |
|   2 |   FIRST ROW                  |                |    474 |
|*  3 |    INDEX RANGE SCAN (MIN/MAX)| PK_UNDRUG_INFO |    474 |
----------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
   3 - access("UNDRUG_CODE"<='F?' AND "UNDRUG_CODE">='F')

不过作为第3方,不能修改语句呢?确实不好做,不过如果是11GR2,可以建立一个函数索引:
CREATE UNIQUE INDEX if_UNDRUG_INFO_undrug_code ON FSHIS.UNDRUG_INFO (substr(undrug_code,1,1),UNDRUG_CODE);

--如果这样代价有点大!

SQL> select * from v$version ;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE    11.2.0.1.0      Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production

SQL> CREATE TABLE test1 AS SELECT ROWNUM ID ,DBMS_RANDOM.STRING('U',10)||LPAD(ROWNUM,6,0) code ,LPAD('a',60,'a') vc FROM DUAL CONNECT BY LEVEL<=10000;
SQL> CREATE UNIQUE INDEX pk_test1 ON TEST1 (CODE) ;
SQL> ALTER TABLE TEST1 ADD CONSTRAINT pk_test1 PRIMARY KEY (CODE);

SQL> exec dbms_stats.gather_table_stats(ownname=>USER, tabname=>'test1');

SQL> set autotrace trace
SQL> select max(code) from test1 where substr(code,1,1)='F';
Execution Plan
----------------------------------------------------------
Plan hash value: 1164682198

----------------------------------------------------------------------------------------
| Id  | Operation                   | Name     | Rows  | Bytes | Cost (%CPU)| Time     |
----------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT            |          |     1 |    17 |     2   (0)| 00:00:01 |
|   1 |  SORT AGGREGATE             |          |     1 |    17 |            |          |
|   2 |   FIRST ROW                 |          |     1 |    17 |     2   (0)| 00:00:01 |
|*  3 |    INDEX FULL SCAN (MIN/MAX)| PK_TEST1 |     1 |    17 |     2   (0)| 00:00:01 |
----------------------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

   3 - filter(SUBSTR("CODE",1,1)='F')

Statistics
----------------------------------------------------------
          0  recursive calls
          0  db block gets
         31  consistent gets
          0  physical reads
          0  redo size
        541  bytes sent via SQL*Net to client
        520  bytes received via SQL*Net from client
          2  SQL*Net roundtrips to/from client
          0  sorts (memory)
          0  sorts (disk)
          1  rows processed

SQL> CREATE UNIQUE INDEX if_test1_code ON TEST1 (substr(code,1,1),CODE) ;
Index created.

SQL> select max(code) from test1 where substr(code,1,1)='F';
Execution Plan
----------------------------------------------------------
Plan hash value: 1185817353

----------------------------------------------------------------------------------------------
| Id  | Operation                    | Name          | Rows  | Bytes | Cost (%CPU)| Time     |
----------------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT             |               |     1 |    20 |     2   (0)| 00:00:01 |
|   1 |  SORT AGGREGATE              |               |     1 |    20 |            |          |
|   2 |   FIRST ROW                  |               |     1 |    20 |     2   (0)| 00:00:01 |
|*  3 |    INDEX RANGE SCAN (MIN/MAX)| IF_TEST1_CODE |     1 |    20 |     2   (0)| 00:00:01 |
----------------------------------------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
   3 - access(SUBSTR("CODE",1,1)='F')
Statistics
----------------------------------------------------------
          0  recursive calls
          0  db block gets
          2  consistent gets
          0  physical reads
          0  redo size
        541  bytes sent via SQL*Net to client
        520  bytes received via SQL*Net from client
          2  SQL*Net roundtrips to/from client
          0  sorts (memory)
          0  sorts (disk)
          1  rows processed

--可以发现可以使用函数索引,并且逻辑读减少.10G,留给大家测试,^_^.



来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/267265/viewspace-719135/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/267265/viewspace-719135/

Juggle是一个接口编排的低代码工具 一个零码 , 低码 , AI的微服务接口编排 & 系统集成的强大编排平台,支持Http , Dubbo , WebService等协议的接口编排,支持通过Groovy , JavaScript , Python , Java等多种脚本语言来增强流程,支持使用MySQL,达梦等多种常见数据源。 立即下载

相关推荐

电动无人机直升机的任务级能量优化,利用MATLABSimulink和FLIGHTLAB研究执行器速率极限和旋翼动力学.zip

1.版本:matlab2014a/2019b/2024b 2.附赠案例数据可直接运行。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

8i下sort*排序大小以及执行计划的问题?

最近看8i下sort设置对执行计划的影响,发现一些奇特的现象,特此写下来: 最近看8i下sort设置对执行计划的影响,发现一些奇特的现象,特此写下来: a.sql: SELECT a.nam...

161

zabbix7.0LTS

libevent-2.1.12-stable.tar.gz mysql80-community-release-el9-3.noarch.rpm net-snmp-5.9.4.tar.gz nginx.conf nginx-1.28.1.tar.gz zabbix-7.0.22.tar.gz zabbix7.0LTS.docx

医生问题

1、【问题】医生开不了儿童心智健康门诊专科诊金,如图 【解决】1、这种诊金是不是普通那种(根据医生等级自动带出的那种),需要医生开医嘱开出来的。 2、排除:(1) 看物价项目表fin_com_undruginfo是否有数据,没有叫会计科维护 ; (2)看术语物价项目对照表是否有数据,没有叫医务科维护术语 2、【问题】如何开自备药 ...

weixin_33962621的博客 178

【无线电力传输】12伏直流风扇的无线电力传输系统实现(Simulink仿真实现)

内容概要:本文围绕12伏直流风扇的无线电力传输系统展开研究,基于Simulink平台构建完整的系统仿真模型,实现电能的非接触式传输。文章系统阐述了无线电力传输的整体架构,深入分析了能量发射端与接收端之间的电磁耦合机制,重点探讨了谐振匹配设计、感应线圈参数优化以及整流稳压电路对输出性能的影响。通过精确建模与仿真,验证了该系统在特定空间距离和对准条件下,能够高效、稳定地驱动12V直流风扇,展现出良好的能量传输效率与系统鲁棒性,为非接触供电技术的实际应用提供了有效的仿真验证方案。; 适合人群:具备一定电力电子技术、电磁场理论及自动控制原理基础知识的本科高年级学生、研究生,以及从事无线充电、电力电子变换和新能源供电系统研发的工程技术人员。; 使用场景及目标:①作为高校相关课程的教学案例,直观演示无线电力传输的基本原理与关键技术实现;②为小型电子设备、智能家居产品或特定工业场景的无线供电方案设计提供可靠的仿真验证平台;③支持科研人员对谐振耦合、阻抗匹配等核心问题进行深入研究,推动非接触式供电技术的优化与创新。; 阅读建议:读者在学习过程中应紧密结合所提供的Simulink仿真模型,深入理解各功能模块(如逆变电路、谐振网络、整流滤波)的参数设置及其对整体系统性能的影响,建议通过调整线圈间距、谐振频率、负载大小等关键变量进行对比仿真,观察系统输出响应的变化,从而全面掌握无线电力传输系统的设计要点、性能评估方法及优化策略。

基于PID优化和矢量控制装置的四旋翼无人机(Matlab&Simulink实现)

基于PID优化和矢量控制装置的四旋翼无人机(Matlab&Simulink实现)内容概要:本文详细介绍了基于PID优化和矢量控制装置的四旋翼无人机控制系统的设计与Matlab&Simulink实现方法。通过建立四旋翼无人机的动力学模型,结合PID控制算法进行姿态调节,并引入矢量控制策略提升飞行稳定性与响应精度。文中涵盖了系统建模、控制器设计、参数整定及仿真验证全过程,重点展示了如何利用Matlab/Simulink工具对俯仰、横滚、偏航和高度四个自由度进行闭环控制仿真,分析了PID参数优化对系统动态性能的影响,同时探讨了矢量控制在多输入多输出非线性系统中的应用优势。该研究为无人机飞控系统的开发提供了完整的理论支持与实践参考。; 适合人群:具备自动控制理论基础、Matlab/Simulink仿真技能及相关工程背景的高校研究生、科研人员及从事无人机控制系统开发的工程师。; 使用场景及目标:①用于教学与科研中理解四旋翼无人机飞行控制原理;②为无人机飞控系统的设计与优化提供可复现的仿真平台;③支持进一步研究先进控制策略(如LQR、MPC)在无人机中的应用。; 阅读建议:建议读者结合文中提供的Matlab代码与Simulink模型文件同步操作,逐步完成建模与仿真过程,并尝试调整PID参数以观察系统响应变化,加深对控制理论实际应用的理解。

【优化交叉口的绿灯时间】基于遗传算法的交通灯管理研究(Matlab代码实现)

内容概要:本文针对传统彩色数字图像加密算法存在的密钥空间有限、抗干扰能力弱等问题,提出了一种结合混沌系统与DNA编码的复合型彩色图像加密解密方案。通过利用混沌系统的初值敏感性和伪随机性生成置乱序列,结合DNA编码的海量组合特性对图像RGB三通道进行多层次的编码、置换与混淆扩散处理,实现高安全性的图像加密。研究系统分析了该方案在高斯噪声和椒盐噪声干扰下的抗噪声性能,以及在不同面积与位置裁剪情况下的抗裁剪性能,实验结果表明该算法具备大密钥空间、强密钥敏感性、良好的抗噪声和抗裁剪鲁棒性,能够有效应对复杂传输环境中的信息泄露与数据损坏风险。; 适合人群:具备一定信号处理或信息安全基础知识,从事图像加密、信息隐藏、多媒体安全等相关领域研究的硕士、博士研究生及科研人员。; 使用场景及目标:①用于网络环境下的私密图像安全传输,如医疗影像、军事图像等高保密性场景;②适用于图像存储中的防篡改与防窃取需求,提升数字版权保护能力;③为复合型加密算法的设计与抗干扰性能评估提供技术参考与实现范例。; 阅读建议:在学习过程中应重点关注混沌序列生成、DNA编码规则映射与像素扩散机制的实现细节,并结合Matlab代码动手复现加密解密流程,通过添加不同类型和强度的噪声与裁剪干扰来验证算法鲁棒性,深入理解多层级加密结构对安全性的提升作用。

双端VSC-HVDC背靠背换流站的PWM调制机理、有功无功独立调控及故障穿越能力研究(Simulink仿真实现)

内容概要:本文系统研究双端VSC-HVDC背靠背换流站的PWM调制机理、有功与无功功率的独立调控策略以及系统在故障条件下的穿越能力,基于Simulink平台构建完整的仿真模型,深入剖析电压源型换流器(VSC)的工作原理与控制特性。研究重点涵盖PWM调制对输出电压波形质量的影响机制,采用d-q坐标系下的解耦控制实现有功与无功功率的精确独立调节,并通过仿真验证系统在电网扰动或短路故障等异常工况下维持稳定运行的能力,即故障穿越性能。全文结合理论分析与仿真实验,全面展示控制策略的有效性、动态响应特性及系统鲁棒性。; 适合人群:电力系统、电气工程及其自动化等相关专业的研究生、科研人员及从事高压直流输电系统设计、运行与维护的工程技术人员。; 使用场景及目标:①深入理解VSC-HVDC系统的核心工作原理与先进控制技术;②掌握基于Simulink的电力电子变换系统建模、控制算法设计与仿真分析方法;③为新能源大规模并网、柔性输电系统开发及电网稳定性提升等前沿课题提供扎实的理论依据与可行的技术仿真方案。; 阅读建议:建议读者结合Simulink仿真环境进行实践操作,重点关注PWM信号生成、锁相环(PLL)、d-q坐标变换、电流内环与功率外环解耦控制等关键模块的设计与参数整定,通过设置不同运行工况和故障场景,观察系统动态响应,从而深化对VSC-HVDC控制机理与故障穿越策略的理解。

开题报告模板.docx

开题报告模板.docx

分布鲁棒数据驱动的多离散场景电热综合能源系统分布鲁棒优化算法研究(Matlab代码实现)

内容概要:本文针对电热综合能源系统中存在的可再生能源出力、负荷需求等不确定性问题,提出了一种数据驱动的多离散场景分布鲁棒优化算法。该方法结合实际运行数据构建多离散场景集,刻画不确定性变量的概率分布特征,并引入分布鲁棒优化(DRO)框架,在最坏-case分布下寻求系统最优调度策略,有效平衡了系统运行的经济性与鲁棒性。研究详细阐述了模型的数学建模过程、求解算法设计及其在Matlab平台上的完整代码实现,涵盖场景生成、不确定性建模、鲁棒优化求解等关键技术环节,并通过仿真算例验证了所提方法在降低运行成本、提升抗干扰能力和系统可靠性方面的优越性能。; 适合人群:具备电力系统、综合能源系统或运筹优化等相关领域基础知识,熟悉Matlab编程语言,从事能源系统优化、不确定性建模与鲁棒调度研究的科研人员及高校研究生。; 使用场景及目标:①学习如何将分布鲁棒优化理论应用于电热综合能源系统的调度决策中;②掌握基于数据驱动的不确定性建模方法与多场景生成技术;③实现并复现高级鲁棒优化算法,提升在复杂不确定环境下进行系统优化建模与仿真分析的能力。; 阅读建议:建议读者结合Matlab代码逐模块深入理解算法实现细节,重点关注不确定性集合构建与优化模型的耦合机制,并尝试在不同参数配置或系统规模下进行仿真实验,以加深对分布鲁棒优化原理与工程应用价值的理解。

Graphviz 16.1.0 图结构可视化工具 Windows x64 官方安装版+DOT语言入门教程

Graphviz 16.1.0 官方 win64 安装包(本机解包实测 dot 16.1.0 正常运行)。官网与 GitLab Release 国内直连慢。使用方法:安装后把 bin 加入 PATH,写 .gv 文件用 dot -Tpng x.gv -o x.png 一键出图;教程含 DOT 语法速查与流程图/状态机/依赖图三个即用模板。

显示技术13.3英寸FHD分辨率TFT-LCD模块与CTP触控集成:高亮度窄边框显示屏在工业及消费电子中的应用

内容概要:本文档为深圳市天显威科技有限公司发布的《TXW133019B0-WST》产品规格书,详细描述了一款13.3英寸、分辨率为1920×RGB×1080的TFT LCD显示模块的技术参数与性能指标。该模块采用全视角(ALL O’CLOCK)显示技术,支持1670万色显示,配备白光LED背光源和2Lane EDP接口,集成电容式触摸屏(CTP),结构为G+G,触控驱动IC为ILI2511,支持USB/I2C通信。文档涵盖产品的基本规格、绝对最大额定值、电气特性、背光单元参数、功能引脚定义、时序特性、光学性能及可靠性测试项目,并明确了工作与存储温湿度范围,符合RoHS环保标准。 适合人群:电子硬件工程师、显示模组研发人员、嵌入式系统设计师及采购技术人员。 使用场景及目标:①用于工业控制、智能终端、医疗设备等人机交互界面的设计与选型;②指导硬件接口设计、电源管理、信号完整性分析及环境适应性验证;③作为产品质量验收和可靠性评估的依据。 阅读建议:此文档技术性强,建议结合实际电路设计与测试需求重点查阅电气参数、引脚定义及可靠性标准,注意NC引脚处理与接地规范,确保设计兼容性和稳定性。

电力系统潮流+风光+水电(IEEE33)(Matlab代码实现)

内容概要:本文介绍了基于Matlab的电力系统潮流计算代码实现,重点研究了包含风能、光能、水能等可再生能源的混合发电系统在IEEE33节点系统中的潮流分析。通过构建综合能源系统模型,实现了对多能源接入下配电系统的稳态运行特性仿真,涵盖潮流分布、电压水平、网络损耗等关键指标的计算与评估,为含分布式电源的配电网规划与运行提供了技术支持。; 适合人群:具备电力系统基础知识和Matlab编程能力的高校学生、科研人员及从事新能源并网研究的工程技术人员。; 使用场景及目标:①掌握含风光水等分布式电源的电力系统潮流计算方法;②学习IEEE33节点系统的建模与仿真技巧;③为新能源接入配电网的影响分析、优化调度与稳定性研究提供仿真工具支持。; 阅读建议:建议读者结合Matlab代码与电力系统分析理论同步学习,重点关注多能源出力模型的构建、节点类型设置及潮流求解算法的实现细节,并可通过修改电源接入位置与出力参数进行扩展性实验验证。

基于布谷鲶鱼优化算法(CCO)、灰雁优化算法(GGO)与田忌赛马优化算(THRO)的城市空中交通多无人机路径规划研究(Matlab代码实现)

内容概要:本文研究了基于布谷鲶鱼优化算法(CCO)、灰雁优化算法(GGO)与田忌赛马优化算法(THRO)的城市空中交通多无人机路径规划问题,提出了一种融合仿生搜索机理与分层协同求解策略的优化方法。通过Matlab代码实现,算法在复杂城市环境中实现了多无人机高效、安全的路径规划,兼顾飞行成本、避障能力与任务协同,提升了全局寻优能力与计算效率。研究系统分析了算法在多约束耦合条件下的性能表现,验证了其在动态障碍物规避、通信约束与能量限制等现实场景中的有效性与鲁棒性。; 适合人群:具备一定算法基础和Matlab编程能力,从事无人机路径规划、智能优化算法或城市空中交通系统研究的科研人员及研究生。; 使用场景及目标:①解决城市环境中多无人机协同路径规划中的冲突与资源竞争问题;②探索仿生优化算法在复杂多目标优化问题中的应用潜力;③为智能交通、应急救援、物流配送等领域的无人系统路径规划提供技术参考。; 阅读建议:建议结合Matlab代码进行仿真实践,重点关注算法的分层结构设计与协同机制,深入理解CCO、GGO与THRO在路径优化中的角色分工与融合策略,同时可通过调整环境参数与约束条件进行性能测试与对比分析。

BP神经网络分类iris数据集

代码转载自:https://pan.quark.cn/s/a4b39357ea24 irisclassificationBPNeuralNetwork 本文用Python实现了BP神经网络分类算法,根据鸢尾花的4个特征,实现3种鸢尾花的分类。 算法参考文章:纯Python实现鸢尾属植物数据集神经网络模型 irisdataclassificationbpnnV1.py 需使用 bpnn_V1数据集 文件夹中的数据 irisdataclassificationbpnnV2.py 需使用 bpnn_V2数据集 文件夹中的数据 irisdataclassification_knn.py 需使用 原始数据集 文件夹中的数据 irisdatacluster_sklearn.py 需使用 sklearn数据集 文件夹中的数据 不同数据集里数据都是一样的,只是为了程序使用方便而做了一些格式的变动。 -- 07.21更新: 增加了分类结果可视化result_visualization。 07.09更新: 完善代码中取数据部分的操作。 -- 数据准备 鸢尾花数据集包含4种特征,萼片长度(Sepal Length)、萼片宽度(Sepal Width)、花瓣长度(Petal Length)和花瓣宽度(Petal Width),以及3种鸢尾花Versicolor、Virginica和Setosa。 数据集共151行,5列: - 第1行是数据说明,“150”表示共150条数据;“4”表示特征数;“setosa、versicolor、virginica”是三类花的名字 - 第2行至第151行是150条数据 - 第1至4列是Sepal Length、Sepal Width、Petal Len...

GPS从入门到放弃(一) --- GPS基础原理

GPS从入门到放弃(一) — GPS基础原理 GPS,全称Global Positioning System,已经广泛应用于我们的日常生活中了,现在的智能手机 里都会自带GPS定位功能。这是一个美国的全球定位系统,虽然我们现在也有北斗了,但毕竟GPS搞的早,所以先从它开始研究起。 整个GPS系统分三大部分: 地面站 卫星 接收机 地面站负责监控。它们通过接收、测量各个卫星信号,计算卫星的运行轨...

tyst08的专栏 2万+
上一篇: [20120319]使用sys_guid()做为主键的问题.txt
下一篇: [20120327]toad与sqlplus下执行sql语句的一个细节.txt
cuixun7780
博客等级 码龄10年 7粉丝 673原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值