当我在 SQL 中创建日期类型时,结果会像这样2012-2-1 Monday 00:00:00
但是,我只想要年份。
我怎样才能得到这个?
创建一个仅包含年份的数字字段,或使用 YEAR() 函数。
datetime,包括日期和时间,“日期”只包括日期格式。
select datepart(year,getdate())
您可以使用此查询来获取当前年份。
select year(now());
您可以使用以下内容吗?:
SELECT *
FROM
table_name
WHERE CONVERT(DATE, column_name) >= '2017-01-01'
AND
CONVERT (DATE, column_name) <= '2017-03-31';
但是,您可能只需要使用CONVERT部分,因为上面的查询会为您获取 2 个特定日期之间的数据。
它应该只是导致问题的“ DATE ”部分,以及您插入数据的方式。如果您以 ' YYYY-MM-DD '格式插入日期,它应该可以正常工作。
不清楚,要不要只选择年份?
如果您使用的是 mysql,您可以执行类似的操作
SELECT DATE_FORMAT(<your field name>, '%Y') FROM <your table name> WHERE 1