это будет работать:
select
SUBSTR(fname, INSTR(fname, '/',1,3)+1),
instr(fname,'_')-INSTR(fname, '/',1,3)+1)) as fname,
to_date(substr(fname,instr(fname,'_',1)+1,8),YYYYMMDD) as fdate
from
(
select '/home/dir/file_name_20181217_product.csv' as fname from dual
);