dongliang1873 2015-01-29 19:42
浏览 33
已采纳

使用Yii框架按年比较

I'm trying to make a query comparing only the year, I want to get all the posts on any given year

$posts = TPost::model()->findAllByAttributes(array('YEAR(date)'=>$year),array('order' => 'date desc', 'limit' => 4));

I typed in the year function in the query and Yii is giving this error

t_post" does not have a column named "YEAR(date)".

which is fine because , but how do I use the Year mysql function in the query using Yii?

Thanks

  • 写回答

1条回答 默认 最新

  • dongshi8359 2015-01-30 09:03
    关注

    I do not know what format you save the date in MySQL, so just Google over: mysql fetch year from date

    Eventually in your yii request you need to use findAllBySQL() (rather than findAllByAttributes() ).

    $posts = TPost::model()->findAllBySQL("SELECT * FROM {table_name} WHERE <MySQL expression to fetch year only> = '{$year}' ". 
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?