| 제목 | 오라클 DB 쿼리 구문 관련 질문입니다. | ||
|---|---|---|---|
| 글쓴이 | 뫄뫄잉뿌 | 작성시각 | 2015/12/08 09:49:16 |
|
|
|||
|
코드이그나이터에서 오라클 DB에 접근하는 쿼리를 작성할 때, $this->db->select('*'); $this->db->from('test'); $this->db->order_by('name','desc'); 이런식으로 깔끔하게 하고 싶은데, 오라클 쿼리중에서 복잡한?쿼리를 날릴때 현재
function com_event_list($mcompany_id,$search_vo){
$query =
"select
DISTINCT(bbs.EXH_ID),
ex.EXH_NM,
ex.EXH_TYPE,
TO_CHAR(ex.EXH_START_DT, 'YYYY-MM-DD') AS EXH_START_DT,
TO_CHAR(ex.EXH_END_DT, 'YYYY-MM-DD') AS EXH_END_DT
from
LETTNBBS bbs,
T_EXHIBITION ex
where
BBS.MCOMPANY_ID = '".$mcompany_id."'
and bbs.BBS_ID IN ('BBSMSTR_BBBBBBBBBBBB','BBSMSTR_CCCCCCCCCCCC')
and bbs.USE_AT = 'Y'";
if(!empty($search_vo->exh_id)){
$query .= "and bbs.EXH_ID = '".$search_vo->exh_id."'";
}
if(!empty($search_vo->search_year)){
$query .= "and TO_CHAR(ex.EXH_START_DT, 'YYYY') = '".$search_vo->search_year."'";
}
$query .= "and bbs.EXH_ID = ex.EXH_ID ORDER BY EXH_START_DT DESC";
return $this->exhibit_db->query($query)->result();
이와같이 날렸었는데 이런 복잡한 오라클 쿼리를 맨 위처럼 바꾸는 방식이 있나요? |
|||
| 다음글 | 세션 유지 질문 드립니다. (3) | ||
| 이전글 | 세션 재 질문 (4) | ||
|
변종원(웅파)
/
2015/12/08 09:55:22 /
추천
0
올리신 쿼리는 active record로 바꾸는데 아무 문제 없는 쿼리입니다.
|
|
뫄뫄잉뿌
/
2015/12/08 10:00:52 /
추천
0
그럼 서브쿼리가 많은 이런건 어떻게하나요??
function news_list($search_vo){
$query =
"SELECT * FROM ( SELECT rownum rn, TB.* FROM (
SELECT
a.NTT_ID, a.NTT_SJ, a.NTT_CN, a.FRST_REGISTER_ID, NVL(b.USER_NM, a.NTCR_NM) as FRST_REGISTER_NM,
TO_CHAR(a.FRST_REGIST_PNTTM, 'YYYY-MM-DD') as FRST_REGIST_PNTTM,
a.RDCNT, a.PARNTSCTT_NO, a.ANSWER_AT, a.ANSWER_LC, a.USE_AT, a.ATCH_FILE_ID,
a.BBS_ID, a.NTCE_BGNDE, a.NTCE_ENDDE
FROM
LETTNBBS a LEFT OUTER JOIN COMVNUSERMASTER b ON a.FRST_REGISTER_ID = b.ESNTL_ID
WHERE
a.BBS_ID = 'BBSMSTR_AAAAAAAAAAAA' and a.USE_AT ='Y' ORDER BY a.SORT_ORDR DESC, NTT_NO ASC
) TB ) WHERE rn > ".$search_vo->first_index."
AND rn <= ".$search_vo->first_index." + ".$search_vo->record_count_per_page;
return $this->exhibit_db->query($query)->result();
}
CI는 처음이라 다른건 괜찬은데 쿼리쪽이 어렵네요 ㅠㅠ 답변감사합니다. |
|
한대승(불의회상)
/
2015/12/08 10:10:48 /
추천
0
서브쿼리로 되어 있는 부분만 SQL로 기술 하시면 됩니다.
|