Respuesta: Dividir el contenido de un campo en dos campos Buenas de nuevo, si bien eso soluciono mi problema, el tema es que ahora el campo tiene 3 datos, latitud, longitud y algunas veces zoom, por lo tanto, quiero que se separe en 3 campos, entendi como funcionaba la funcion locate, pero si quiero localizar la segunda coma (en caso de que exista) para colocar el valor en el tercer campo, como seria?
Originalmente era asi:
UPDATE tabla SET
latitud = SUBSTRING(coordenadas,1,LOCATE(",",coordenadas) - 1),
longitud = SUBSTRING(coordenadas,LOCATE(",",coordenadas) + 1,
LENGTH(coordenadas));
Yo implemente lo siguiente:
UPDATE tabla SET
latitud = SUBSTRING(coordenadas,1,LOCATE(",",coordenadas) - 1),
longitud = SUBSTRING(coordenadas,LOCATE(",",coordenadas) + 1,
zoom_mapa = SUBSTRING(geopos,LOCATE(",",geopos,LENGTH(lat)+LEN GTH(lon)) + 1, LENGTH(geopos));
Esto funciona bien con campos que tienen las 2 comas, por ejemplo:
coordenadas = 9.305236786124137,-79.95585698437503,7 Luego
latitud = 9.305236786124137
longitud = -79.95585698437503,7
zoom_mapa = 7
Pero, como algunos valores no tienen la segunda coma, recorre nuevamente la cadena y el tercer campo toma el primer valor, es decir:
coordenadas = 89.74658693637143,-64.08262457682292 Luego:
latitud = 89.74658693637143
longitud = -64.08262457682292
zoom_mapa = 89.74658693637143
Espero que alguien pueda ayudarme!!!
Desde ya muchas gracias!!!!
Última edición por gandalf_2706; 18/09/2012 a las 10:58
Razón: Solucion parcial
|