Is this what you had in mind ?
SQL> drop table GL purge;
Table dropped.
SQL>
SQL> create table GL
2 as select rownum*10 x
3 from dual
4 connect by level <= 10000;
Table created.
SQL>
SQL> drop table LOOKUP purge;
Table dropped.
SQL>
SQL> create table LOOKUP ( lo int, hi int);
Table created.
SQL>
SQL>
SQL> insert into LOOKUP values (11000 , 11999 );
1 row created.
SQL> insert into LOOKUP values (14000 , 15000);
1 row created.
SQL> insert into LOOKUP values (28000 , 30000);
1 row created.
SQL> insert into LOOKUP values (12400, 12400);
1 row created.
SQL> insert into LOOKUP values (44300, 44300);
1 row created.
SQL> insert into LOOKUP values (49990, 49990 );
1 row created.
SQL>
SQL> select gl.*
2 from GL, LOOKUP
3 where gl.x between LOOKUP.lo and LOOKUP.hi;
X
----------
11000
11010
11020
11030
11040
11050
11060
11070
11080
[snip]
29950
29960
29970
29980
29990
30000
44300
49990
405 rows selected.
SQL>
SQL>