SQL语句优化
对同一张表进行两种方式查询(结果集相同):
case1 查询条件:包括计算机名,昵称,添加时间等等一些限制条件字段。而且需联表查询别的表
查询数据量: 100万 200万
单纯执行SQL语句所需时间:31毫秒 31毫秒
循环遍历数据集所需时间: 57秒 1分50秒
case 2查询条件:无
select * from 【表】
查询数据量: 100万 200万
单纯执行SQL语句所需时间:31毫秒 31毫秒
循环遍历数据集所需时间: 20秒 40秒
注意下循环遍历数据集时间(纵向100万的,或者200万的都行),查询条件不一样,尽管最终查询数据量是一样的,但是遍历时间差别很大。
为什么呢?
可不可以这么理解,SQL语句越复杂(或者说优化程度没那么高),影响的不是SQL本身的执行,而是数据的提取呢?
相关文档:
treeview.aspx中代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="treeview.aspx.cs" Inherits="treeview" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999 ......
使用SQL Server导入/导出Excel,包含部分错误信息处理方法;
操作手记,留此备查
/*
导入
*/
--错误信息如下时:
--Msg 15281, Level 16, State 1, Line 2
--SQL Server blocked access to STATEMENT 'OpenRowset/OpenDatasource' of component 'Ad Hoc Distributed Queries' because this component is turned off as ......
通过v$sqlarea,v$sql查询最占用资源的查询 收藏
引用:http://blog.chinaunix.net/u/3866/showart_396335.html
-----------------------
v$sqlarea,v$sql
-----------------------
从V$SQLAREA中查询最占用资源的查询
select b.username username,a.disk_reads reads,
a.executions exec,a ......
使用SQL Server身份验证登录时报错:
无法连接到.\SQLEXPRESS.
Additional information:
用户'sa'登录失败。该用户与可信SQL Server 连接无关联。(microsoft SQL Server,Error:18452))
------------------
下面是映射时报的错:
创建对于用户“sa”失败。(microsoft.sqlServer.express.smo)
Additional ......
最近用到日期范围的查询,用到了between,但是发现如果日期带时间的话,BETWEEN '2010-1-4' AND
'2010-1-4'这样的语句是查不到数据的,后来想到了一种改进方法,供大家参考。
如下:
BETWEEN '2010-1-4' AND DATEADD(day, 1, '2010-1-4')
用了DATEADD以后,效果很不错 ......