Не могли бы вы сделать это только с помощью substr / instr?
Исправленный город / год будет выглядеть примерно так: substr(cityyear,1,instr(cityyear,']')-1)
.
Скорректированный год будет выглядеть примерно так: substr(cityyear,instr(cityyear,'-2') +1,4)
(при условии, что все годы в этом столетии). Если в других столетиях есть годы, вы можете использовать оператор (ы) CASE.
(и обновлять только строки, содержащие ]
, возможно, с where instr(cityyear,']') > 0
)