2017-08-07 184 views
0

我必須爲變量:年份和月份,兩者都是整型。在Postgresql中將年份和月份變量轉換爲時間戳記

E.g:

year = 2016 month = 1

我想,在我的SELECT語句,返回給這兩個變量的時間戳。

我看過文檔,特別是to_timestampto_date,但我遇到的所有示例都顯示一個字符串被轉換爲時間戳。

我真的不希望我的yearmonth轉換爲字符串,如:

to_timestamp(to_char(int,year) + ' ' + to_char(int, month),YYYY/MM/DD HH24:MI:SS) 

所以,我怎麼能(如果可能)將我yearmonth成時間戳?

+0

你想要一天的價值?小時? –

+0

@TimBiegeleisen只是默認設置 - 它實際上只是我感興趣的年份和月份。這一天可以是第一個,時間可以是午夜。 – pookie

回答

2

如果您使用的是Postgres 9.4或更高版本,你可以嘗試使用make_timestamp()

make_timestamp(2016, 1, 1, 0, 0, 0.0) 

這將在午夜創建一個時間戳2016年1月1日。我們需要指定其他組件的值,即使它們最終與查詢/計算無關(例如,您只需要日期)。

+0

完美。謝謝。 – pookie

+0

我不得不等待10分鐘,然後才標記爲正確。 – pookie