如何将此查询构建器从Kohana 2.4更改为Kohana 3?

时间:2011-01-11 11:56:37

标签: kohana kohana-3

我已经将这个网站构建了几个月,我刚刚开始使用Kohana 3.我只想将这个K2.4查询构建器转换为K3查询构建器。

return DB::select(array('posts.id', 'posts.created', 'posts.uri', 'posts.price', 'posts.description', 'posts.title',
                'image_count' => db::expr('COUNT(images.id)')))
        ->from('posts')
        ->join('images')->on('images.post_id', '=', 'posts.id')
        ->group_by(array('posts.id'))
        ->order_by('posts.id', 'DESC')
        ->limit($limit)
        ->offset($offset)
        ->execute();

1 个答案:

答案 0 :(得分:1)

您需要做的唯一更改是从DB :: select()中删除周围的数组,对于别名字段,使用数组

Kohana3中的查询构建器接受任意数量的参数,请参阅http://kohanaframework.org/guide/database/query/builder

return DB::select('posts.id', 'posts.created', 'posts.uri', 
            'posts.price', 'posts.description', 'posts.title',
            array('COUNT("images.id")', 'image_count'))
    ->from('posts')
    ->join('images')->on('images.post_id', '=', 'posts.id')
    ->group_by(array('posts.id'))
    ->order_by('posts.id', 'DESC')
    ->limit($limit)
    ->offset($offset)
    ->execute();