Хм... може би това?
SELECT @before := CONCAT(SUBSTRING_INDEX(`columnname`,',',3),','),
@len := LENGTH(SUBSTRING_INDEX(`columnname`,',',4)+1
FROM `tablename` WHERE ...;
SELECT CONCAT(@before,'newstring',SUBSTRING(`columnname`,@len+1)) AS `result`
FROM `tablename` WHERE ...;
Сменете нещата, ако е необходимо, но това би трябвало да свърши работа.
РЕДАКТИРАНЕ :Обединено в една заявка:
SELECT
CONCAT(
SUBSTRING_INDEX(`columnname`,',',3),
',newstring,',
SUBSTRING(`columnname`, LENGTH(SUBSTRING_INDEX(`columnname`,',',4)+1))
) as `result`
FROM `tablename` WHERE ...;
Това +1
може да се наложи да е +2
, не съм сигурен, но това трябва да работи.