2011-01-11 3 views
0

몇 달 동안이 웹 사이트를 구축했으며 Kohana 3에 접속할 예정입니다.이 K2.4 쿼리 작성기를 K3 쿼리 작성기로 변환하고 싶습니다.이 쿼리 빌더를 Kohana 2.4에서 Kohana 3으로 어떻게 변경합니까?

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

당신이해야 할 유일한 변화는()를 선택 :: DB를에서 주변 배열을 삭제하고 별칭 필드, 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(); 
+0

실제로 나는 1 시간 전에 그것을 얻었다. 난 그냥 받아 들일 수있는 답을 줄 누군가를 기다렸다;) –

+0

hehe, 나는 1 시간 전에 q를 보지 못했다 – SpadXIII

+0

더 나은 아직'array ('COUNT ("images.id")', 'image_count ')'을 선택하면 열이 제대로 이스케이프 처리됩니다. – shadowhand