현재 뷰테이블의 값을 txt로 추출하고 있습니다
스크립트도 있고 배치도 있긴한데
만약 300건이라면 기존에는 하나의 1.txt 파일로 추출했는데
이제는 0 ~ 150까지 1.txt로 151~마지막레코드까지를 2.txt로 반정도로 나눠서, 쪼개서, 추출하려면 조건절을 어떻게 해야하나요
rownum을 이용해서 해보려니 잘 안되네요; 두번째 값이 0 이 나오는;;;;; 왜 0 이 나오는거죠..?
select count(*) from Viewtable
where rownum <= 1500000 ;
select count(*) from Viewtable
where rownum >= 1500001;
select max(rownum) from Viewtable ; -- 3011003
select count(*) from Viewtable ; -- 3011003
파일 하나,
select count(*) from (select rownum rnum, id from Viewtable order by id desc)
where rnum between 1 and 1500000 ;
-- 1500000
파일 둘,
select count(*) from (select rownum rnum, id from Viewtable order by id desc)
where rnum between 1500001 and (select max(rownum) from Viewtable) ;
-- 1511003
이렇게 하면 될까요?
select max(rownum) from Viewtable ; -- 3011003
select count(*) from Viewtable; -- 3011003
select count(*) from (select rownum rnum, id from Viewtable order by id desc)
where rnum <= 1500000 ;
-- 1500000
select count(*) from (select rownum rnum, id from Viewtable order by id desc)
where rnum >= 1500001 and rnum <= 9999999 ;
-- 1511003
이렇게요?
추가질문1) order by 꼭 해야하나요, 저것도 구글링한거라, 안하면 rownum 특성상 문제가 된다거나그런건지..
추가질문2) 매달? 쓸 쿼리라서, 게다가 데이터의 분실이 한건이라도 있으면 안되서 조심스럽습니다, 혹시 문제가 있는 부분이 있을까요