Ver Mensaje Individual
  #7 (permalink)  
Antiguo 13/09/2009, 19:42
Avatar de huesos52
huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: depurar campos.

Cita:
quiero que las cedulas que sean menores a 6 digitos, reemplazarlos por 0
Código sql:
Ver original
  1. UPDATE tabla SET campo=IF(LENGTH(campo) < 6,'0',campo);

Cita:
los campos vacios y/o nulos reemplazarlos por 0
Código sql:
Ver original
  1. UPDATE tabla SET campo='0' WHERE campo IS NULL;
  2. UPDATE tabla SET campo='0' WHERE campo='';

Cita:
quiero primero reemplazar cualquier caracter diferente a numero por nada.
es decir letras, simbolos, espacios, quitarlos para que queden solo numeros
Lo de los numeros, te recomiendo crees una funión en mysql que recorra una cadena y elimine los caracteres diferentes a numeros y los reemplace. Luego la utilizas en el update.
Si tienes problemas, me avisas. No tengo como probar nada en este momento.

Cita:
y por ultimo cambiare el tipo de campo de varchar a bigint. para ke de aqui en adelante solo sean numeros..
Código sql:
Ver original
  1. ALTER TABLE tabla MODIFY campo BIGINT;

cabe aclarar que para hacer esto, no deben existir caracteres en el campo para que se haga correctamente.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming