方式一:

ALTER Proc [dbo].[usp_Rpt_AcctTypeAudit]
@FromDate datetime=null, -- yyyy-mm-dd (may change in the future!)
@ToDate datetime=null, -- yyyy-mm-dd (may change in the future!)
@UserID nvarchar(50) = 'ALL'
as
BEGIN
set nocount on
if @ToDate is not null
begin
set @ToDate=convert(varchar,@ToDate,112)+' 23:59:59:998'
end select
AcctType,AcctDesc,HostAcctType,AcctNumLength,
case [Action] when 'A' then 'Add' when 'D' then 'Delete' when 'M' then 'Before-Modify' when 'N' then 'After-Modify' else '' end as [Action]
,UserID,WsID,CrtTime
from AcctTypeMasterHist with(nolock)
where (CrtTime >= @FromDate or @FromDate is null)
and (CrtTime <= @ToDate or @ToDate is null)
and (UserID = @UserID or @UserID='ALL' or isnull(@UserID,'')='')
order by crttime,LogID
END

方式二:

create  PROCEDURE [dbo].[Sp_CCBA_ProcessLogRpt]
@FromDate datetime,
@ToDate datetime,
@UserID varchar(27),
@Workstation varchar(28)
AS Select * from ProcessLogInf
WHERE DATEDIFF(day, @FromDate, AcDate)>= 0
ANd DATEDIFF(day, AcDate, @ToDate)>= 0
AND LogUser = CASE RTRIM(@UserID) WHEN 'ALL' THEN LogUser WHEN '' THEN LogUser ELSE @UserID END
AND LogWs = CASE RTRIM(@Workstation) WHEN 'ALL' THEN LogWs WHEN '' THEN LogWs ELSE @Workstation END

效率分析:

作为SqlServer内置函数存在的DateDiff,在执行的过程中需要再解释,跟使用“>”和“<”逻辑关系拼结在语句相比,在执行效率上很大打折扣。

由此可以看出来内置函数DateDiff果然在执行的时候进行了再分析。
那么在以后的使用过程中如果可以用“>”和“<”号这种逻辑关系所能拼结并能够正确得到结果的使用,可以适当的抛弃使用DateDiff这种SqlServer内置的函数,会相应的提高编写的Sql语句执行的效率。

摘自:http://tieba.baidu.com/p/2762861623

SQL Server 查询时间段内数据的更多相关文章

  1. SQL Server备份时间段内插入的数据依旧进入了备份文件?(转载)

    问 MSSql我在本机测试了下.为了延长备份时间,找个大的数据库.开始完整备份bak然后再此库新建表,并增添数据.备份结束.==================还原备份后,在还原的数据库内发现新增的表 ...

  2. 面试1 SQL SERVER 查询第20行到30之间的数据

    SQL SERVER 查询第20行到30之间的数据 1.先查询前20行的ID,后查询除去20条记录的前10条记录 SELECT TOP 10 * FROM tbBank WHERE BankID NO ...

  3. SQL Server中Table字典数据的查询SQL示例代码

    SQL Server中Table字典数据的查询SQL示例代码 前言 在数据库系统原理与设计(第3版)教科书中这样写道: 数据库包含4类数据: 1.用户数据 2.元数据 3.索引 4.应用元数据 其中, ...

  4. 用SQL Server查询所有数据并显示

    利用SQL Server查询数据,并把所有数据显示在页面上. "%> <%@page import="jdbc.sqlServer"%> <%@p ...

  5. 恢复SQL Server被误删除的数据

    恢复SQL Server被误删除的数据 <恢复SQL Server被误删除的数据(再扩展)> 地址:http://www.cnblogs.com/lyhabc/p/4620764.html ...

  6. [转] 利用SET STATISTICS IO和SET STATISTICS TIME 优化SQL Server查询性能

    首先需要说明的是这篇文章的内容并不是如何调节SQL Server查询性能的(有关这方面的内容能写一本书),而是如何在SQL Server查询性能的调节中利用SET STATISTICS IO和SET ...

  7. SQL Server利用RowNumber()内置函数与Over关键字实现通用分页存储过程(支持单表或多表结查集分页)

    SQL Server利用RowNumber()内置函数与Over关键字实现通用分页存储过程,支持单表或多表结查集分页,存储过程如下: /******************/ --Author:梦在旅 ...

  8. SQL Server 查询性能优化 相关文章

    来自: SQL Server 查询性能优化——堆表.碎片与索引(一) SQL Server 查询性能优化——堆表.碎片与索引(二) SQL Server 查询性能优化——覆盖索引(一) SQL Ser ...

  9. 利用SET STATISTICS IO和SET STATISTICS TIME 优化SQL Server查询性能

    首先需要说明的是这篇文章的内容并不是如何调节SQL Server查询性能的(有关这方面的内容能写一本书),而是如何在SQL Server查询性能的调节中利用SET STATISTICS IO和SET ...

随机推荐

  1. (:: operator)作用域限定符的几种使用

    一.(:: operator)解决局部变量与全局变量重名问题 ; int main() { ; cout<<var<<endl;//local variable cout< ...

  2. XML文件数据操作

    #region XML序列化文件和反序列化 /// <summary> /// 通用类的保存函数,可以将已经声明过可序列化的类以文件方式保存起来. /// 保存格式分为 XML明文式和 二 ...

  3. HDU 4923 Room and Moor

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4923 解题报告:给出一个长度为n的只包含0和1的序列,是否存在一个序列Bi满足一下条件: 1.     ...

  4. iOS开发——UI进阶篇(六)键盘处理

    一.键盘通知我们经常需要在键盘弹出或者隐藏的时候做一些特定的操作,因此需要监听键盘的状态 键盘状态改变的时候,系统会发出一些特定的通知UIKeyboardWillShowNotification // ...

  5. Distinct Subsequences Leetcode

    Given a string S and a string T, count the number of distinct subsequences of T in S. A subsequence ...

  6. Inorder Successor in Binary Search Tree

    Given a binary search tree (See Definition) and a node in it, find the in-order successor of that no ...

  7. css3 animation 属性众妙

    转自:凹凸实验室(https://aotu.io/notes/2016/11/28/css3-animation-properties/) 本文不会详细介绍每个 css3 animation 属性(需 ...

  8. python del 注意点

    >>> del a[:] >>> a [] del也可以用于删除整个变量: >>> >>> del a 之后再引用名称 a 将会 ...

  9. Tunna内网转发

    Tunna和reduh原理一样.. 使用方法: 上传源码包中文件夹webshell下的脚本至网站目录 然后本地进行连接上传的webshell即可 python proxy.py -u http://1 ...

  10. centos 随意截屏

    yum install kdegraphics 菜单路径: applications(应用程序)/Graphics(图形图像)/KSnapshot