原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优化与调优技术,主要内容包括: 第一篇“执行计划”...
总的来说,SQL优化是一个系统性的工作,需要结合硬件配置、数据库设计、SQL编写等多个方面进行综合考虑。而借助专业的SQL优化工具,这个过程可以变得更加高效和精确,从而确保数据库系统的稳定和高效运行。
SQL优化最佳实践:构建高效率Oracle...本资源摘要信息涵盖了SQL优化的基本概念、Oracle数据库与SQL优化的关系、SQL执行原理、Oracle数据库架构和SQL执行流程等方面的知识点,为读者提供了一个系统的了解SQL优化的框架。
8. **适当使用集合函数**:SUM, COUNT等集合函数可能需要全表扫描,考虑是否可以使用分区函数或分组来减少计算范围。 9. **限制返回结果**:使用LIMIT或ROWNUM限制返回的行数,尤其是在开发和测试环境中,避免拉取...
1. **SQL基础与语法**:面试通常会涉及到SQL的基本概念,如SELECT语句、JOIN操作、子查询、聚合函数(COUNT、SUM、AVG等)、WHERE和HAVING子句的区分。 2. **索引原理**:索引是提高查询速度的关键,面试中可能会问...
* SQL 聚合函数:包括 AVG 函数、COUNT 函数、FIRST 函数、LAST 函数、MAX 函数、MIN 函数、SUM 函数等。 * SQL 字符串函数:包括 UCASE 函数、LCASE 函数、MID 函数、LEN 函数等。 * SQL 日期函数:包括 NOW 函数、...
首先举个栗子(不想看的话直接下面看总结): order_type:订单类型 open_id:用户唯一标识 SELECT date(create_time) AS '当天日期', sum(real_price) AS '当天总收入', sum函数中使用if判断条件:{ sum( IF ...
收获,不止SQL优化 PDF 带书签 第二部分
- 聚合函数:COUNT、SUM、AVG、MIN、MAX等统计函数的使用。 3. **连接查询** - INNER JOIN、LEFT JOIN、RIGHT JOIN、FULL JOIN:理解不同类型的联接操作,合并来自多个表的数据。 - 自连接:处理一个表内部的...
ms sql server 字符合计,类似sum函数的功能,不过是针对字符型!
- **聚合函数**:COUNT、SUM、AVG、MIN和MAX用于计算特定列的总和、平均值、最小值和最大值。 ### 5. 流程控制语句 - **IF...ELSE**:条件判断语句,根据条件执行不同代码块。 - **BEGIN...END**:定义代码块,常...
折半查找漏数据的例子,仅供学习参考 create procedure fTheLossNo @cardno as begin declare @maxBalance float,@minBalance float,@middleBalance float,@tempMaxBalance float,@tempMinBalance float set @...
嵌套查询是指在一个外部查询中使用另一个内部查询的结果。这种查询结构可以用来处理更为复杂的业务逻辑,特别是在需要跨多个表进行深入分析时。 **示例:** - **找出选了“数据库原理”这门课的学生数量:** ```...
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 ...