Попробуйте:
INSERT INTO mark_table
select stu_name s_name,
case when stu_mark >= 0 then stu_mark end pos_mark,
case when stu_mark < 0 then stu_mark end neg_mark
from main_table
(при условии, что вы хотите, чтобы отметки 0 заполнялись в pos_mark, но не в столбце neg_mark.)