SqlServer中如何查詢最近幾天數據


問題描述

如何查詢最近7天內數據?

解決

select * from xxx where datediff(d, d_createdate, getdate()) < 7

核心為 datediff 函數,獲取兩個日期之間的時間。

datediff(datepart,startdate,enddate)

日期部分(datepart) 全名 縮寫
year yy, yyyy
季度 quarter qq, q
month mm, m
一年中的日期 dayofyear dy, y
day dd, d
week wk, ww
小時 hour hh
分鍾 minute mi, n
second ss, s
毫秒 millisecond ms
微妙 microsecond mcs
納秒 nanosecond ns

dayofyear 和 day 在 datediff 函數中的結果是相同的。datediff 函數在類型為毫秒,微妙,納秒時可能超出 int 的最大范圍,所以SqlServer還提供了 datediff_big 函數

datediff_big(datepart,startdate,enddate)

但在類型為納秒時也可能超出 bigint 的最大范圍。

參考

DATEDIFF (Transact-SQL)
SQL Server DATEDIFF() 函數
SQLServer 日期函數大全
SQL Server DATEDIFF: How's dayofyear different from day?


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM