To insert values from another table there's two methods:
For a single row insert, you can put the select statement directly in the where clause:
create table t (x integer);
insert into t values ((select 1 from dual));
1 row inserted.
select * from t;
X
----------
1
to insert multiple rows, use a select statement instead of a values clause:
delete t;
insert into t
select rownum
from dual
connect by level <= 5;
5 rows inserted.
select * from t;
X
----------
1
2
3
4
5
I'm guessing you want something along the lines of:
insert into student
select 'student_id', job_id , 'student name'
from batch_job
where batch_status = 'SUCCESS';
You'll need to post create table statements with example before and after data for us to verify this though.