【发布时间】:2014-05-25 13:50:37
【问题描述】:
我在数据库中有一个名为 tidpunkt 的列,它以时间戳格式存储日期。如何使用 SQL 仅提取年份?我仍然希望提取的年份带有时间戳。
我试过这样:
SELECT EXTRACT(YEAR FROM tidpunkt) as tidpunkt FROM ringupp
但它不起作用。我做错了吗?
【问题讨论】:
标签: sql time timestamp extract
我在数据库中有一个名为 tidpunkt 的列,它以时间戳格式存储日期。如何使用 SQL 仅提取年份?我仍然希望提取的年份带有时间戳。
我试过这样:
SELECT EXTRACT(YEAR FROM tidpunkt) as tidpunkt FROM ringupp
但它不起作用。我做错了吗?
【问题讨论】:
标签: sql time timestamp extract
SELECT YEAR(tidpunkt) as tidpunkt FROM ringupp
这样做
SELECT FROM_UNIXTIME(tidpunkt , '%Y') AS tidpunkt FROM ringupp
MySQL FROM_UNIXTIME() 从 unix_timestamp 版本返回日期 /datetime。返回值在‘YYYYY-MM-DD HH:MM:SS’中。
【讨论】:
SELECT EXTRACT(YEAR FROM tidpunkt) FROM ringupp
【讨论】:
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
【讨论】:
试试这个:
如果您需要 4 位数年份
SELECT DATEPART('yyyy',tidpunkt) as tidpunkt FROM ringupp
如果需要 2 位数年份:
SELECT DATEPART('yy',tidpunkt) as tidpunkt FROM ringupp
文档here
【讨论】: