| 제목 | 코드이그나이터의 select from where 함수 쓰는게 더 좋은건가요? | ||
|---|---|---|---|
| 카테고리 | PHP | ||
| 글쓴이 | 아리아리 | 작성시각 | 2018/08/14 16:59:13 | 
|  | |||
| 가독성을 올리기 위함인가요? 
 select("*") -> from("TB") -> get() -> result(); 
 이렇게 하면 더 깔끔한가요?.. 
 만약 SELECT * FROM TB_MATERIAL_INFO a , (SELECT ITEM_ID,COST FROM (SELECT ITEM_ID, COST FROM TB_MATERIAL_COST_INFO ORDER BY REGDT DESC) as Z GROUP BY ITEM_ID ) as b WHERE a.ITEM_ID = b.ITEM_ID 
 이런 복잡한 쿼리를 저렇게 만든다고 하면 
 
return $this->db->select('*')
                 ->from('TB_MATERIAL_INFO')
                 ->join('(SELECT ITEM_ID,COST FROM (SELECT ITEM_ID, COST, REGDT FROM TB_MATERIAL_COST_INFO ORDER                                                                                                  
                  BY REGDT DESC) as Z GROUP BY ITEM_ID) as b ','TB_MATERIAL_INFO.ITEM_ID = b.ITEM_ID')
                  ->get()->result_array();이렇게 해야하잖아요? 
 join 부분을 더 쪼갤수 있을까요? 
 
 
 | |||
| 다음글 | mysql 쿼리 작성할때 FROM과 JOIN에 들어갈 ... (3) | ||
| 이전글 | 서버에서 ajax 처럼 api 접속해서 데이터 가져오는... (2) | ||
| 
                                한대승(불의회상)
                                /
                                2018/08/14 17:53:30 /
                                추천
                                0
                             | 
코드이그나이터에서 제공하는 쿼리 빌더는 서브쿼리를 지원하지 않습니다.
쿼리가 복잡한 경우에는 $this->db->query() 함수를 사용하세요.