正常的mysql查询是
select * from recordstable where YEAR(dateline) = 2014;
表格如下:
recordid dateline status
_________________________
1 1388534400 1
2 1188534400 2
我想获得今年的记录。这就是我所知道的
$this->db->get_where('recordstable',array('dateline'=>2014));
现在,如何在列名日期行上应用年份。
答案 0 :(得分:0)
您的数据存储为unix时间戳,因此使用year()
将返回NULL。
您需要使用from_unixtime()
来获取实际日期,然后使用年份
mysql> select year('1388534400');
+------------------+
| year('1388534400') |
+------------------+
| NULL |
+------------------+
mysql> select year(from_unixtime('1388534400'));
+-----------------------------------+
| year(from_unixtime('1388534400')) |
+-----------------------------------+
| 2014 |
+-----------------------------------+
然后在CI中,您需要将where条件传递为
array('Year(from_unixtime(dateline))'=>2014