我在數據庫中有一個名爲tidpunkt的列,它以時間戳格式存儲日期。我如何只提取一年的SQL?我仍然希望提取的年份在時間戳中。使用SQL從UNIX時間戳提取年份
我已經試過這樣:
SELECT EXTRACT(YEAR FROM tidpunkt) as tidpunkt FROM ringupp
但它不工作。難道我做錯了什麼?
我在數據庫中有一個名爲tidpunkt的列,它以時間戳格式存儲日期。我如何只提取一年的SQL?我仍然希望提取的年份在時間戳中。使用SQL從UNIX時間戳提取年份
我已經試過這樣:
SELECT EXTRACT(YEAR FROM tidpunkt) as tidpunkt FROM ringupp
但它不工作。難道我做錯了什麼?
SELECT YEAR(tidpunkt) as tidpunkt FROM ringupp
做這個
SELECT FROM_UNIXTIME(tidpunkt , '%Y') AS tidpunkt FROM ringupp
MySQL的FROM_UNIXTIME()
返回從版本UNIX_TIMESTAMP的日期/日期。返回值是'YYYYY-MM-DD HH:MM:SS'。
請參閱DOCUMENTATION。另請參閱該Example
試試這個:
如果您需要4位數的年份
SELECT DATEPART('yyyy',tidpunkt) as tidpunkt FROM ringupp
,如果2位數的年份是必需的:
SELECT DATEPART('yy',tidpunkt) as tidpunkt FROM ringupp
文檔here
DATE_FORMAT是你的朋友,用mysql
看到http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date-format
SELECT DATE_FORMAT(tidpunkt, '%Y') as tidpunkt FROM ringupp
SELECT EXTRACT(YEAR FROM tidpunkt) FROM ringupp
@m哈桑:這是行不通的。沒有什麼會被返回。數據庫中的時間戳記如下所示:1370601583 – user500468
ok,所以你的時間戳記是unix格式。編輯答案 –
@m hasan:非常感謝。我如何獲得2014年的行? SELECT FROM_UNIXTIME(tidpunkt,'%Y')AS tidpunkt WHERE tidpunkt ==「CURRENT YEAR IN TIMESTAMP」;我不知道如何在SQL中獲取當前年份。 – user500468