2012-03-01 67 views
1

以下命令以簡短的形式給出當前月份(3月)。SQL獲取上個月的名字

SELECT left(datename(month, getdate()), 3) 

但我需要上個月二月

我的意思是,每當我運行此命令會給我上個月的名字。

什麼是sql命令?

+1

聽起來像是你應該能夠做到月 - 1 ...? ? – MethodMan 2012-03-01 19:55:30

回答

3
SELECT left(datename(month, dateadd(dd, -1, getdate())), 3) 
+0

哇!非常感謝!這就是我正在尋找的。 – Satish 2012-03-01 19:59:00

+0

我不斷收到jun而不是... – Si8 2014-06-20 17:01:20

1

試試這個:

SELECT left(datename(month, date_sub(getdate(), interval 1 month)), 3) 

這將爲MySQL的(你沒有指定你的SQL服務器),對於不同的DB可能需要類似date_sub

1
SELECT left(datename(month, DATEADD(MM,-1,getdate())), 3) 
+0

你們真棒! – Satish 2012-03-01 20:00:21

1
select left(datename(month, dateadd(month, -1, getdate()),3) 
3

試試這個:

SELECT left(datename(month, dateadd(m,-1,getdate())), 3) 
0

試試這個:

select substring(DATENAME(MONTH,getdate()),1,3) 

我認爲這將有助於你更好

問候, Azarudhin S.