제목 | active 레코드에서 사용하는 CI구문들을 프로시져를 호출해서 쿼리할때 사용이 가능한지요? | ||
---|---|---|---|
카테고리 | CI 2, 3 | ||
글쓴이 | 하늘을 바라보며 | 작성시각 | 2019/10/01 13:29:47 |
|
|||
예) $this->db->last_query(), $this->db->get(), $this->db->get_compiled_select() 위의 예와 같은 것을 프로시져 호출하여 쿼리시에 사용이 가능하다면 쓰는 방법을 좀 알고 싶습니다. 제가 프로시져를 호출해서 쓰게 된 이유는 쿼리가 복잡해서 사용하였는데요. 막상 사용 후 CI에서 사용하는 간단 명료한 명령들을 사용하지 못해서 문의드립니다. 쿼리를 바꿔서 CI 상에서 사용 가능하도록 ( active 레코드에서 사용하는 CI구문) 바꿔서 사용해야 하는지요. 아래내용을 적용한다면 어떻게 구성해야 할까요?
예) 쿼리형태(현재 프로시져의 일부 쿼리입니다.) SELECT * , ( SELECT FROM country_p g where a.send_p = g.intp_p ) as s_send , ( SELECT FROM country_p f where a.recv_p = f.intp_p ) as r_recv FROM `intp_sr` `a` LEFT JOIN `intp_sr` `e` ON (`a`.`idx` = e.idx) LEFT JOIN `curr` `h` ON (1 = 1) where case when (SELECT FROM coun_p g where a.recv_p = g.intp_p and substr(a.send_p,1,3) != substr(a.recv_p,1,3)) like '태%' then h.idx = 11 else h.idx = 1 end and a.send_date BETWEEN in_start_dt AND in_end_dt and a.send_p >= 80
|
|||
다음글 | $this->db->where('') 처리시... (2) | ||
이전글 | CI 마이크로 서비스 가능여부? (3) | ||
변종원(웅파)
/
2019/10/01 14:20:10 /
추천
0
액티브레코드 구문을 mysql procedure 에 사용하고 싶다는 질문이네요. 결론은 불가능입니다.
|
하늘을 바라보며
/
2019/10/02 15:37:37 /
추천
0
제목 : DB join and union 질문 의 내용 참조 후 아래 댓글을 보았습니다. 결론적으로 문의 드리면, $this->db->query()에 쿼리문을 모두 넣고 처리하는 경우는 위의 구문을 CI상에서 구현이 가능한지요? 만약 가능하다면 복잡한 쿼리를 넣은 후 액티브레코드 구문처리를 한 예시나 좋은 곳 있으시면 알려주세요. 정말 감사합니다.^^
댓글 한대승(불의회상) / 2018/07/23 19:10:25 변종원(웅파) / 2018/07/24 18:12:15 복잡한 쿼리는 그냥 사용하시는걸 추천합니다. 한대승님 의견에 한 표 + |