sql server中查詢今天、昨天、本週、上週、本月、上月資料
在做sql server開發的時候有時需要獲取表中今天、昨天、本週、上週、本月、上月等資料,這時候就需要使用datediff()函式及getdate()函式了。
datediff ( datepart , startdate , enddate )
釋義:計算時間差
datepare值:year | quarter | month | week | day | hour | minute | second | millisecond
startdate:開始日期
enddate :結束日期
getdate()
釋義:獲取當前的系統日期
下面例子中表名為tablename,條件欄位名為inputdate
查詢今天
select * from tablename where datediff(day,inputdate,getdate())=0
查詢昨天
select * from tablename where datediff(day,inputdate,getdate())=1
查詢本週
select * from tablename where datediff(week,inputdate,getdate())=0
查詢上週
select * from tablename where datediff(week,inputdate,getdate())=1
查詢本月
select * from tablename where datediff(month,inputdate,getdate())=0
查詢上月
select * from tablename where datediff(month,inputdate,getdate())=1
查詢本季度的
select * from t_interviewinfo where datediff(qq,inputdate,getdate())=0
----------------------------------------------
declare @dt datetime
set @dt=getdate()
declare @number int
set @number=3
--1.指定日期該年的第一天或最後一天
--第一天為1月1日、最後一天為12月31日都是固定的
--a. 年的第一天
select convert(char(5),@dt,120)+'1-1'
--b. 年的最後一天
select convert(char(5),@dt,120)+'12-31'
--2.指定日期所在季度的第一天或最後一天
--a. 季度的第一天
select convert(datetime,
convert(char(8),
dateadd(month,
datepart(quarter,@dt)*3-month(@dt)-2,
@dt),
120)+'1')
--b. 季度的最後一天(case判斷法)
select convert(datetime,
convert(char(8),
dateadd(month,
datepart(quarter,@dt)*3-month(@dt),
@dt),
120)
+case when datepart(quarter,@dt) in(1,4)
then '31'else '30' end)
--c. 季度的最後一天(直接推算法)
select dateadd(day,-1,
convert(char(8),
dateadd(month,
1+datepart(quarter,@dt)*3-month(@dt),
@dt),
120)+'1')
--3.指定日期所在月份的第一天或最後一天
--a. 月的第一天
select convert(datetime,convert(char(8),@dt,120)+'1')
--b. 月的最後一天
select dateadd(day,-1,convert(char(8),dateadd(month,1,@dt),120)+'1')
--4.指定日期所在周的任意一天
select dateadd(day,@number-datepart(weekday,@dt),@dt)
--5.指定日期所在周的任意星期幾
--a. 星期天做為一周的第1天
select dateadd(day,@number-(datepart(weekday,@dt)+@@datefirst-1)%7,@dt)
--b. 星期一做為一周的第1天
select dateadd(day,@number-(datepart(weekday,@dt)+@@datefirst-2)%7-1,@dt)
SQL查詢今天 昨天 本週 上週 本月 上月資料
mysql資料庫 查詢當天的所有資料 select from 表名 where datediff 字段,now 0 查詢昨天的所有資料 select from 表名 where datediff 字段,now 1 查詢未來第n天的所有資料 當n為負數時,表示過去第n天的資料 select from ...
求當天,昨天,本週,上週,本月,上月的函式
以前在一家大公司由於不能使用儲存過程,直接用 寫了求當天,昨天,本週,上週,本月,上月的函式。給大家參考。根據日期型別獲取相應的時間段 建立標識 yangys20080512 日期型別 開始日期 輸出引數 結束日期 輸出引數 void private void getdatetime int dat...
獲取時間(本週,上週,本月,上月)
首先此處使用的是moment.js 用法 一 node用法 npm install moment然後引入需要用的地方 官方給出如下 var moment require moment 我在react裡面引用如下 import moment from moment 原理一致,只是不同框架匯入方式不一樣...