2011-10-27 5 views
2

私は以下のクエリを持っていますが、2012年が変わるときにはうまくいかないでしょう。どんな助けも素晴らしいでしょう。返すSQLクエリGET()mm-yyyy -1月

SELECT distinct Month(GetDate())-1,Year(GetDate()) FROM myybl 

答えて

2

おそらく、この:あなたは二つの別々の列をしたい場合は

09-2011 

SELECT RIGHT(CONVERT(VARCHAR, DATEADD(mm,-1,GETDATE()),105),7) 

今日のためにフォーマットされた出力は次のようになります:

SELECT DATEPART(mm,DATEADD(mm,-1,GETDATE())) AS MONTH, 
     DATEPART(yyyy,DATEADD(mm,-1,GETDATE())) AS YEAR 

出力:

MONTH YEAR 
    9 2011 
+0

誰かがこの答えに-1を与えたのはなぜですか?私はこの答えが直接問題の問題に対処したと思った? –

0

DATEADDを使用してみてください:

SELECT DISTINCT MONTH(DATEADD(month, -1, GETDATE())) [Month], 
       YEAR(DATEADD(month, -1, GETDATE())) [Year] 
FROM myybl 
+0

私は1年前たくないので、ちょうど1ヶ月前、仕事を文句を言わない –

+0

-1年にだけではない一年離れGETDATEから1ヶ月かかります。それは1月を占める。 – norlando

関連する問題