The sub-query will only be executed if col1 is null but each time it is null. So if there are many null values in col1 this will become very slow.
The following may work better for you:
select coalesce(col1,col2) from table1,table2
where (relationship between both tables)