你的SQL语句和出错信息好像不匹配么?
试试这样:
select * from message where DATE_FORMAT(message_time, %Y) = 2005
或者
select * from message where YEAR(message_time) = 2005
试试这样:
select * from message where DATE_FORMAT(message_time, %Y) = 2005
或者
select * from message where YEAR(message_time) = 2005
select * from message where DATE_FORMAT(message_time,'%Y') = '2005';
也可以这样:
select * from message where year(message_time) = '2005';
mysql> select * from message where left(message_time,4) = '2005';
加‘’就行了
那如果是用时间戳来记录时间,字段类型是int的话,又是怎么做啊?
-> '1997-10-04 22:23:00'
mysql> SELECT FROM_UNIXTIME(875996580) + 0;
-> 19971004222300
select * from message where DATE_FORMAT(message_time,'%Y') = '2005';
也可以这样:
select * from message where year(message_time) = '2005';
很简单:
select * from message where substring(message_time,1,4)='2005'
这个绝对可以.
搞定!@