`
shhbobby
  • 浏览: 4159 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

数据库sql语句优化基础知识普及

阅读更多
  •  MySQL里面的join顺便说一句就是,通常有点讲究的是用小表去驱动大表,而由于MySQL join实现的原理就是做循环比如left join就是对左边的数据进行循环去驱动右边的表,比如左边是可能会有m条记录匹配,右边有n条记录那么就是做m次循环,每次扫描n行数据,总扫面行数是 m*n行数据.左边返回的结果集的大小就决定了循环的次数,故单纯的用小表去驱动大表不一定的正确的,小表的结果集可能也大于大表的结果集,所以写 join的时候尽可能的先估计两张表的可能结果集,用小结果集去驱动大结果集.值得注意的是在使用left/right join的时候,从表的条件应写在on之后,主表应写在where之后.否则MySQL会当作普通的连表查询!
  • COUNT(*)通常是对主键进行索引扫描,而COUNT(COL)就不一定了,另外前者是统计表中的所有符合的纪录总数,而后者是计算表中所有符合的COL的纪录数。
  • 简单说下,就是COUNT的时候,如果没有WHERE限制的话,MySQL直接返回保存有总的行数
    而在有WHERE限制的情况下,总是需要对MySQL进行全表遍历。

    优化总结
    1.任何情况下SELECT COUNT(*) FROM tablename是最优选择;
    2.尽量减少SELECT COUNT(*) FROM tablename WHERE COL = ‘value’ 这种查询;
    3.杜绝SELECT COUNT(COL) FROM tablename WHERE COL2 = ‘value’ 的出现。

  • http://dev.mysql.com/doc/refman/5.1/zh/optimization.html更多的优化策略

 

 

0
0
分享到:
评论

相关推荐

    数据库基本知识和基础sql语句.doc

    了解这些基础的数据库知识和SQL语句后,我们可以更有效地进行数据管理和分析。无论是在开发应用程序,还是在数据分析领域,掌握数据库的基本操作都是非常重要的技能。通过不断的实践和学习,可以进一步提升在数据库...

    数据库基础知识大全 电子版

    ### 数据库基础知识详解 #### 一、数据库基本概念 ##### 1.1 什么是数据库? 数据库(Database,简称DB)是一种存储数据的方式,它能够高效地组织、存储和处理大量数据。通过数据库管理系统(Database Management...

    4、T6财务软件数据库基础知识培训精品.pptx

    2. 存储过程(STORED PROCEDURE):预编译的SQL语句集合,用于执行复杂的数据库操作。 3. 视图(VIEW):虚拟表,基于一个或多个表的查询结果,提供不同的数据视图。 4. 触发器(TRIGGER):自动执行的数据库操作,...

    JSP+SQL数据库超市管理系统

    3. 编码实现:利用JSP和Java进行前端和后端的编码工作,同时编写SQL语句来操作数据库。 4. 测试调试:进行单元测试和集成测试,确保各个模块功能正常。 5. 部署上线:将系统部署到服务器,进行实际环境的运行测试。 ...

    Asp+Sql 对数据库的各种操作

    根据提供的文件信息,我们可以归纳出以下几个关键的知识点: ### 知识点一:ASP与SQL交互的基本原理 ASP(Active Server Pages)是一种...对于初学者来说,了解这些基础知识是非常重要的。希望这些内容能够帮助到您。

    数据库资料数据库的资料

    数据库技术的发展历程悠久,从早期的层次型和网状型数据库,到关系型数据库的普及,再到如今的NoSQL数据库和云计算环境下的分布式数据库,数据库一直在适应着信息化社会的需求变化。 在学习数据库的过程中,我们...

    数据库课件

    本压缩包文件“数据库课件”包含了丰富的学习资料,旨在帮助爱好者和专业人士深入理解数据库系统的基础知识、设计原则以及实际应用。 首先,我们要了解数据库是什么。数据库是一个有组织、可存储和检索数据的系统,...

    数据库期末复习,知识点总结,超详细解析。一看就懂+例题

    本复习资料基于《数据库原理》第二版,由潘永浩和杨克戎主编,电子科技大学出版社出版,旨在帮助学生全面掌握数据库系统的基础知识。 首先,我们需要了解数据库管理的三个发展阶段:人工管理阶段、文件系统阶段和...

    SQL Server数据库自动备份方法.pdf

    在作业步骤中,选择类型为T-SQL,并输入具体的备份语句,这里使用BACKUP DATABASE语句进行数据库备份,将备份文件以日期时间命名,并存放在指定文件夹。接下来,需要添加作业执行计划,包括执行频率和具体触发时间等...

    基于SQL Server数据库的通用查询系统的设计与实现.pdf

    1. 关系数据库的重要性:文章强调了关系数据库在数据库领域中的核心地位,其结构简洁明了,理论基础稳固,使得SQL Server数据库成为了数据库应用最广泛的系统之一。关系数据库的结构基于关系代数理论,这种结构设计...

    网络数据库课件ppt(web数据库ppt)

    本课程的学习任务是,掌握网络数据库系统一些基础知识和基本要点,了解网络数据库技术的发展方向,掌握网络数据库的开发技术。 二、本课程与其它课程的联系和分工 先修课程:计算机文化基础,数据结构 三、课程...

    北大青鸟accp7.0优化MySchool数据库设计课件+上级+课后作业答案

    4. **查询优化**:课程会涉及SQL查询优化,包括如何编写高效的SQL语句,使用JOIN、子查询、聚合函数等,以及如何利用EXPLAIN分析查询执行计划,调整索引和表设计以优化查询效率。 5. **数据库事务与并发控制**:在...

    SQL21天自学通

    - 存储过程(STORED PROCEDURES):一种在数据库内存储并执行的代码块,可以包含逻辑控制语句和复杂的SQL语句。 本篇内容仅为SQL自学通的一部分,它涵盖了SQL的基本语句、数据类型、函数以及与数据库的交互方式。...

Global site tag (gtag.js) - Google Analytics