使用SQL从UNIX时间戳中提取年份

时间:2014-04-11 12:03:28

标签: sql time timestamp extract

我在数据库中有一个名为tidpunkt的列,它以时间戳格式存储日期。如何仅使用SQL提取年份?我仍然希望提取的年份是时间戳。

我试过这样:

SELECT EXTRACT(YEAR FROM tidpunkt) as tidpunkt FROM ringupp

但它不起作用。我做错了吗?

4 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:1)

试试这个:

如果您需要4位数年份

SELECT DATEPART('yyyy',tidpunkt) as tidpunkt FROM ringupp

如果需要2位数年份:

SELECT DATEPART('yy',tidpunkt) as tidpunkt FROM ringupp

文档here

答案 2 :(得分:0)

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

答案 3 :(得分:0)

SELECT EXTRACT(YEAR FROM tidpunkt) FROM ringupp