2013-02-19 35 views
0

因此,我有一个简单的模型,该模型具有date属性,该属性作为MySQL DATE值(即2013-02-19)存储在数据库中。检索给定年份的所有ORM记录

从2012年起检索所有记录的最佳方法是什么?

回答

1

您可以从2012使用ORM查询生成器和DB::expr()方法得到的所有记录:

$year = 2012; 

$my_models = ORM::factory('MyModel') 
     ->where(DB::expr('YEAR(`date`)'), '=', $year) 
     ->find_all(); 

// $my_models will be a Database_Result object 
// To get an array of ORM row objects, simply: 
$my_models_rows = $my_models->as_array(); 
+0

这就是我正在寻找的!我的MySQL很生疏,我忘记了很多事情(如单引号中的周围参数)。 – joncys 2013-02-20 11:59:59

0
SELECT * FROM table_name WHERE YEAR(date_column) >= 2012; 
+0

对不起,我忘了明确的告诉我正在寻找一个ORM查询解决方案。 – joncys 2013-02-20 12:00:55

相关问题