Home » SQL & PL/SQL » SQL & PL/SQL » Substr a column
Substr a column [message #38056] Fri, 15 March 2002 16:40 Go to next message
KK
Messages: 24
Registered: March 2002
Junior Member
Hi!

I have a column that contains data as follows
table1.division = 101010111012...1014
which is the dept_number
dept_number = 1010
dept_number = 1011
dept_number = 1012
...
dept_number = 1014

I need to loop through this column(table1.division), join it to - table2.dept_number for every dept_number in table1.division.

Each division will contain multiple departments, max 600 char. There are also multiple divisions.

Any help would be appreciated!! Thanks!!
Re: Substr a column [message #38062 is a reply to message #38056] Sun, 17 March 2002 23:23 Go to previous message
Pratibha
Messages: 29
Registered: November 2001
Junior Member
Hi
I have given a sample code, make changes according to your requirement, u can use the same logic.
try it out & let me know

-- This sample code uses emp table
-- Begin Code ---------------------------
declare
i number(5);
j number(5);
m_division varchar2(600);
m_cnt number(5);
m_division_after_split number(5);
w_rec emp%rowtype;
begin
j := 1;
m_division := '101020201030202020202020021010101010101010101010101099203040';
m_cnt := length(m_division);

for i in 1 .. m_cnt
loop
select substr(m_division,j,2) into m_division_after_split from dual;
dbms_output.put_line ('Main Loop Cnt: ' || i);
j := j+2;
dbms_output.put_line('Division After Splitting : '|| m_division_after_split);

for w_rec in (
select empno,deptno,ename from emp where deptno = m_division_after_split)
loop
dbms_output.put_line ('Inner Loop Cnt: ' || i);
dbms_output.put_line('empno : '|| w_rec.empno);
dbms_output.put_line('deptno : '|| w_rec.deptno);
dbms_output.put_line('ename : '|| w_rec.ename);
end loop;
end loop; -- main loop end
end;
-- End Code ----------------------------

good luck
Previous Topic: need JOIN expert
Next Topic: yearwise revenue - reg
Goto Forum:
  


Current Time: Fri Apr 19 17:40:41 CDT 2024