sql >> Base de Datos >  >> RDS >> Mysql

Dividir cadena delimitada por comas --> FUNCTION db.CHARINDEX no existe

MySQL no tiene un CHARINDEX() incorporado función. LOCATE() sería el equivalente de MySQL.

Usando SUBSTRING_INDEX() podría ser una forma más sucinta de hacer esto. Algo como esto (descargo de responsabilidad:no probado):

SUBSTRING_INDEX(POS, ',', 1) para TPV

SUBSTRING_INDEX(POS, ',', -1) para POS2

Aparte, puede que no entienda bien lo que intentas lograr, pero parece que querrás UPDATE filas existentes, no INSERT ¿nuevos? Algo como:

UPDATE MyTable SET POS2 = SUBSTRING_INDEX(POS, ',', -1);
UPDATE MyTable SET POS = SUBSTRING_INDEX(POS, ',', 1);