$query = "SELECT * ";
$query .= "FROM (SELECT ";
if(!$qry) {
$query .= "/*+ index_desc(table) */";
}
$query .= " rownum as
rnum,a.subject,to_char(to_date(a.signdate,'yyyy-mm-dd'),'yyyy-mm-dd'),";
$query .=
"to_date(a.enddate,'yyyymmdd')-to_date($curdate,'yyyymmdd'),a.filename,a.filesize,b.name";
$query .= " from table a, table b where a.id = b.id";
if($qry) {
$query .= $qry desc";
}
$query .= ") WHERE rnum >= $start_per_page AND rownum <=
$num_per_page";
[오라클]테이블 두개 조인하여 페이징 할 경우 문제가
생겼습니다.
table a 와 table b 를 id 로 조인하여 목록을 출력합니다...
여기서 문제점이 두 가지가 발생 하였습니다...
1. primary 이외의 칼럼으로 순서를 정하고 싶은데 되지를
않더군요
- 위 $qry 변수에 값이 있을 경우 그 변수를 기준으로 목록을
출력하고
싶은데 되지를 않더군요 ex)order by a.filesize desc, order by
b.name
2. from table a, table b where a.id = b.id order by a.filesize
desc
이런식으로 하니까 filesize 순서대로 출력이 되지않을 뿐 아니라 두
번째 페이에서
중복 데이터가 출력됩니다...
테이블 조인하여 출력시 사용자 선택에 의한 출력순서를 정하는거와
페이징을 해결하고 싶습니다.
도움 부탁드립니다.
|