функция подстроки имеет 3 параметра
SUBSTRING (str, position, [length])
Запрос должен выглядеть следующим образом:
select
substring('20180211',1,4) || '-' ||
substring('20180211',5,2)|| '-' ||
substring('20180211',7,2) as newcol1
Результат будет '2018-02-11'
Преобразование датызависимости от вашей базы данных.
PostgresSQL - to_date(text, text)
Пример: to_date('05 Dec 2000', 'DD Mon YYYY')
в вашем случае:
select
to_date(substring('20180211',1,4) || '-' ||
substring('20180211',5,2)|| '-' ||
substring('20180211',7,2),'yyyy-mm-dd') as newcol1
Если вы хотите преобразовать только строку в дату, вы можете использовать маску 'yyyymmdd':
select to_date('20180211','yyyymmdd') as newcol1