2013-08-28 3 views
0
SELECT *, SUM(`Relaxation_rating` + `Food_rating`) AS Ratings 
GROUP BY CODE 
ORDER BY Ratings DESC 
FROM destinations 

CodeIgniter에서이 sql 코드를 CctiveRecord로 변환하려면 어떻게해야합니까?CodeIgniter에서 SQL을 활성 레코드로 변환

다음 방법을 시도했지만 결과가 모두 나타났습니다.

$this->db->select("'(SELECT *, SUM(Relaxation_rating + Food_rating) FROM database GROUP BY CODE') AS Ratings", FALSE); 
$this->db->get("database"); 
+0

에서 [CodeIgniter의 사용자 가이드] 같은 시도 http://ellislab.com/codeigniter/ user-guide/database/active_record.html) 꽤 좋습니다. 그것을 사용해보십시오. – Mischa

+0

http://ellislab.com/codeigniter/user-guide/database/active_record.html select at select_sum –

+1

다시 작성한 쿼리가 완전히 손상되었습니다. 일치하지 않는''(''과'') 쌍이 있는데, 잘못된 위치에서 앨리어싱을하는 것입니다. –

답변

1

보십시오

$data = $this->db->select('*, SUM(`Relaxation_rating` + `Food_rating`) AS Ratings', false)->group_by('CODE')->order_by('Ratings', 'desc')->get('destinations')->result_array(); 

또는

$this->db->select('*, SUM(`Relaxation_rating` + `Food_rating`) AS Ratings', false)->group_by('CODE')->order_by('Ratings', 'desc')->get('destinations')->result(); 
0

은 (

$this->db->select('*, SUM(`Relaxation_rating` + `Food_rating`) AS Ratings'); 
$this->db->from('destinations'); 
$this->db->group_by('CODE'); 
$this->db->order_by('Ratings','desc'); 
$result = $this->db->get(); 
관련 문제