[英]how to get previous year (month december) and month showing current month in sql
我有日期時間值列表。 如何僅選擇12月的上一年。
例如:
Current month = May 2016
Previous year of december = Dec 2015
(it will display data from dec 2015 to may 2016)
if Current month = May 2017
Previous year of december = Dec 2016 and so on.
(it will display data from dec 2015 to may 2016)
任何想法 ? 非常感謝你
下面的查詢將提供所需的輸出:-
declare @val as date='2016-05-19'
select concat(datename(MM,DATEADD(yy, DATEDIFF(yy,0,@val), -1)),' ',datepart(YYYY,DATEADD(yy, DATEDIFF(yy,0,@val), -1)))
輸出:2015年12月
您可以減去月份數:
select dateadd(month, - month(val), val)
SELECT
*
FROM
TableName
WHERE
TableName.Date BETWEEN CONVERT(DATE,CONVERT(VARCHAR,DATEPART(YYYY,GETDATE())-1)+'-12-'+'01') AND GETDATE()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.