разовая, когда из импорта приходят данные,
Тогда достаточно банально,
селект где pid = 0 и width = 0,
затем уже в пыхе перебор строк,
експлодим name пробелом,
выбираем все строки где name теперь массив длинной 1(это будут корни) в отдельный массив
и ключами в этом массиве делаем name.
Еще один раз перебираем массив строк с проверкой или массив длинной более 1 в name,
после чего из name[1] вытаскиваем чистую цифру(убираем скобки), записываем в width,
из name[0] получаем ключ к массиву корней, из которого достаем id, и кладем в pid.
Всё, строчки упдэйтнуть в базу.
Вполне возможно где-то можно улучшить алгоритм, но "в лоб" - это самый очевидный вариант.