原SQL:select count(*) as total from table a where a.row1='0'
修改后:
select
sum(case a.row1 when '0' then 1 else 0 end) as total
from
table a
或则
select
sum(if(a.row1='0',1,0)) as total
from
table a
SQL优化例子:
优化前
select
s.Name,
(select count(*) from CheckCertLog where StoreId=s.StoreId and State=0 and CheckTime between '2010-02-02' and '2010-9-2')as fail_count,
(select count(*) from CheckCertLog where StoreId=s.StoreId and State=1 and CheckTime between '2010-02-02' and '2010-9-2')as success_count,
(select count(*) from CheckCertLog where StoreId=s.StoreId and CheckTime between '2010-02-02' and '2010-9-2')as tcount
from
Store as s
优化后
select
a.Name,
sum(case b.State when 0 then 1 else 0 end ) as fail_count,
sum(case b.State when 1 then 1 else 0 end ) as success_count,
sum(case b.State when 1 then 1 else 1 end) as total
from
Store a, CheckCertLog b
where
a.StoreId=b.StoreId and b.CheckTime between '2010-02-02' and '2010-9-2'
分享到:
相关推荐
Oracle数据库的性能优化直接关系到系统的运行效率,而影响数据库性能的一个重要因素就是SQL性能问题。本书是作者十年磨一剑的成果之一,深入分析与解剖Oracle SQL优化与调优技术,主要内容包括: 第一篇“执行计划”...
8. **适当使用集合函数**:SUM, COUNT等集合函数可能需要全表扫描,考虑是否可以使用分区函数或分组来减少计算范围。 9. **限制返回结果**:使用LIMIT或ROWNUM限制返回的行数,尤其是在开发和测试环境中,避免拉取...
1. **SQL基础与语法**:面试通常会涉及到SQL的基本概念,如SELECT语句、JOIN操作、子查询、聚合函数(COUNT、SUM、AVG等)、WHERE和HAVING子句的区分。 2. **索引原理**:索引是提高查询速度的关键,面试中可能会问...
SQL 查询优化是数据库优化的重要部分,查询优化器是 SQL SERVER 中的一个组件,可以自动优化查询语句,提高查询效率。本文将详细介绍查询优化器的工作原理、SARG 的定义和应用、查询优化的 tips 等。 一、查询优化...
收获,不止SQL优化 PDF 带书签 第二部分
- 聚合函数:COUNT、SUM、AVG、MIN、MAX等统计函数的使用。 3. **连接查询** - INNER JOIN、LEFT JOIN、RIGHT JOIN、FULL JOIN:理解不同类型的联接操作,合并来自多个表的数据。 - 自连接:处理一个表内部的...
在SQL语句中,`SUM` 和 `COUNT` 函数是非常常见的聚合函数,它们用于对一组数据进行求和或计数。然而,在某些场景下,我们可能需要在这些函数中加入条件判断,以便更精确地统计特定条件下的数据。本文将深入讲解如何...
在 MySQL 数据库中,查询优化是一个非常重要的方面。在实际应用中,高效的查询可以提高整个系统的性能和响应速度。下面我们将介绍几个提高 MySQL 数据库查询效率的技巧。 使用 Statement 进行绑定查询 使用 ...
ms sql server 字符合计,类似sum函数的功能,不过是针对字符型!
然而,SQL虽然实现简单可乐,却极易引发性能问题,那时广大SQL使用人员可要“愁”就一个字,心碎无数次了。 缘何有性能问题?原因也一字概括:“量”。当系统数据量、并发访问量上去后,不良SQL就会拖跨整个系统,...
Oracle数据库的性能优化直接关系到系统的运行效率,而影响数据库性能的一个重要因素就是SQL性能问题。本书是作者十年磨一剑的成果之一,深入分析与解剖OracleSQL优化与调优技术,主要内容包括: 第一篇“执行计划”...
折半查找漏数据的例子,仅供学习参考 create procedure fTheLossNo @cardno as begin declare @maxBalance float,@minBalance float,@middleBalance float,@tempMaxBalance float,@tempMinBalance float set @...
嵌套查询是指在一个外部查询中使用另一个内部查询的结果。这种查询结构可以用来处理更为复杂的业务逻辑,特别是在需要跨多个表进行深入分析时。 **示例:** - **找出选了“数据库原理”这门课的学生数量:** ```...
- 将多个INSERT语句合并为一个,减少与数据库交互的次数。 - 使用事务管理来进一步提高效率。 ### 7. 数据库事务管理 - **场景**:在执行复杂的业务逻辑时,合理使用事务管理可以提高数据处理的安全性和一致性。...
SUM是对符合条件的记录的数值列求和 COUNT 是对查询中符合条件的结果(或记录)的个数 例如: 表fruit id name price 1 apple 3.00 2 pear 4.00 ... 您可能感兴趣的文章:解析关于SQL语句Count的一点细节
以下是从给定的部分内容中抽取的一个SQL查询优化实例: ```sql -- 创建测试表testA CREATE TABLE testA ( id INT IDENTITY(1,1) NOT NULL PRIMARY KEY, ta_year CHAR(10) NOT NULL, ta_num INT NOT NULL ); GO ...
**题目1:** 给定一张表`table1`有两个字段`FID`,`Fno`,编写一个SQL语句来列出该表中一个`FID`对应多个不同的`Fno`的记录。 **解答:** ```sql SELECT * FROM table1 WHERE FID IN ( SELECT FID FROM table1 ...