puede ser algo confuso, pero siempre se puede hacer, la cuestion es la imaginación que le pongamos.
Hay varias maneras de borrar un campo específico de esa cadena. puede ser con la misma función str_replace(), o tambien puede ser con la funcion explode() para crear un arreglo a partir de esa cadena.
Por ejemplo, si quiero eliminar el 250 solamente:
Código PHP:
Ver original//el campo a eliminar
$eliminar = "250";
//La cadena que nos trajo la consulta:
$cadena = "005|009|250|650|120|003|012";
//la cadena que vamos a crear:
//reemplazar "|250|" por "":
$nuevaCadena = str_replace("|".$eliminar."|","",$cadena);
y listo... ahora simplemente haces el UPDATE
al igual que añadiríamos otro:
Código PHP:
Ver original//la cadena que nos trajo la consulta
$cadena = "005|009|250|650|120|003|012";
//el campo a añadir
$nuevo = "556";
//lo concatenamos a la cadena existente
$cadenaNueva = $cadena."|".$nuevo;
y su respectivo UPDATE
Ahora, si las consultas son muy recurrentes, estaría muy bien que las hicieras con classes.
Saludos