码迷,mamicode.com
首页 > 数据库 > 详细

SQL获取前一天0:00:00至23:59:59数据

时间:2015-08-18 13:47:04      阅读:316      评论:0      收藏:0      [点我收藏+]

标签:

一、前言

因为我公司要做财务结算前一天0:00:00至23:59:59的数据,利用到动态拼接SQL语句

我们需要明白声明DateTime 和 Date 获取的时间格式是不一样的,所以通过此计算有利于得到我们需要的时间段数据

二、测试数据展示(自己看print结果)

DECLARE @startDate DATE;
DECLARE @startDateTime DATETIME;
DECLARE @endDateTime DATETIME ;
SET @startDate=GETDATE();
SELECT @startDateTime=DATEADD(DAY,-1,@startDate); 
SET @endDateTime=DATEADD(second,-1,CONVERT(DATETIME,@startDate))

print(@startDateTime)
print(CONVERT(DATETIME,@startDate))
print(@startDate)
print(@endDateTime)

 

技术分享

三、动态SQL语句

DECLARE @startDate DATE;
DECLARE @startDateTime DATETIME;
DECLARE @endDateTime DATETIME ;
SET @startDate=GETDATE();
SELECT @startDateTime=DATEADD(DAY,-1,@startDate); 
SET @endDateTime=DATEADD(second,-1,CONVERT(DATETIME,@startDate))

declare @sql nvarchar(1000)
set @sql=select * from E_OrdersLogistics  where ForecastTime>=‘‘‘+cast(ISNULL(@startDateTime,‘‘) as nvarchar(100))  +‘‘‘ and ForecastTime<‘‘‘+CAST(ISNULL(@endDateTime,‘‘) as nvarchar(100))+‘‘‘‘

print(@sql)

exec(@sql)

技术分享

如需转载,请注明出处,谢谢大家支持~

 

SQL获取前一天0:00:00至23:59:59数据

标签:

原文地址:http://www.cnblogs.com/kesimin/p/4738900.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!