예상보다 훨~~~씬 많은 row를 출력한다면 connect by level 을 원 테이블에 바로 적용하신 것 같네요.
connect by level을 좀 쉽게 풀어보면요
select 'lv1' from t -- level = 1
union all
select 'lv2' from t, t -- level = 2
union all
select 'lv3' from t, t, t -- level = 3
...
이런 식으로 이해하시면 됩니다.
원 테이블 row 수가 2 개라면
2 개(level 1) + 4개(level 2) + 8개(level 3) + 16개(level 4)..
이런 식으로 자기 행복제를 해나가게 되는 겁니다.
원 테이블 row 수가 2일 때 4 level까지 가면 총 row 수는 30개가 되겠죠.
원 테이블 행수가 2개라도 이런데 만약 원테이블 row 수가 수만개라면??
쿼리 돌리면 재수 없으면 메모리 다 먹고 자폭할지도 모릅니다ㅎㅎ
그래서 원테이블에 connect by level 은 사용할 일이 거의 없고요
대부분 dual과 함께 행복제 용도로 사용됩니다.