0
所以我在從Oracle做過程和函數轉換到MS SQL服務器的過程中正在使用TRUNC函數2012從Oracle在T-SQL
在Oracle中,我有以下的select語句:
--Add 5 months less one day to the quarter, ie 1/1/09 returns 5/31/09
SELECT ADD_MONTHS(TRUNC(to_date('1-dec-2017'), 'q'), 5) - 1 FROM DUAL;
而我得到的回報以下值:
28-FEB-18
我試圖把它轉換成MS SQL服務器,如:
SELECT dateadd(m, 0, convert(datetime, dateadd(q, 5,convert(datetime,'1-dec-2017')))) - 1
而且我得到以下結果:2019-02-28 00:00:00.000
我不知道爲什麼我收到額外一年在T-SQL。我會感謝一些幫助。謝謝。
你加入5個季度,而不是5個月。 –
我試過了:'SELECT dateadd(m,5,convert(datetime,'1-dec-2017')) - 1' 我在TSQL中得到回報2018-04-30 –