Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

quitar caracteres despues del ultimo espacio en blanco

Estas en el tema de quitar caracteres despues del ultimo espacio en blanco en el foro de Mysql en Foros del Web. hola amigos tengo el siguiente problema en el campo nombre de la tabla departmentos tengo almacenado 1 Contabilidad CT 2 Marketing MK 3 Informatica TI ...
  #1 (permalink)  
Antiguo 06/04/2017, 09:06
 
Fecha de Ingreso: abril-2013
Mensajes: 29
Antigüedad: 11 años
Puntos: 0
quitar caracteres despues del ultimo espacio en blanco

hola amigos tengo el siguiente problema

en el campo nombre de la tabla departmentos tengo almacenado

1 Contabilidad CT
2 Marketing MK
3 Informatica TI
4 Capacitacion
5 Abastecimiento
6 Recursos Humanos RR
7....
y la lista sigue, pero como se puede notar algunos registros al final tienen un espacio y 2 letras

pero necesito presentar en un select el campo nombre pero quitando el espacio al final y esas 2 letras que siguen en la descripcion a los registros que cumplan esa condición (1,2,6) para el ejemplo aunque son mas registros.
  #2 (permalink)  
Antiguo 06/04/2017, 09:54
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: quitar caracteres despues del ultimo espacio en blanco

podrias hacer un substring del caracter 1 a la posicion que te mande la funcion locate y con eso obtendras la cadena que necesitas
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 06/04/2017, 13:37
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: quitar caracteres despues del ultimo espacio en blanco

Hola vmoran:

Utiliza la función SUBSTRING_INDEX para traerte la parte de la cadena que necesitas, es decir, algo así:

Código MySQL:
Ver original
  1.   campo,
  2.   SUBSTRING_INDEX(campo, ' ', 2) campo_modificado
  3. FROM tu_tabla;

Saludos
Leo.
  #4 (permalink)  
Antiguo 08/04/2017, 14:12
Usuario no validado
 
Fecha de Ingreso: abril-2008
Mensajes: 50
Antigüedad: 16 años
Puntos: 16
Respuesta: quitar caracteres despues del ultimo espacio en blanco

Código MySQL:
Ver original
  1. select ID, NOMBRE,
  2.     case
  3.         when substring(reverse(NOMBRE), 3, 1) = ' ' then substring(NOMBRE, 1, length(NOMBRE) -3)
  4.         else NOMBRE
  5.     end as FINAL
  6.         select 1 as ID, 'Contabilidad CT' as NOMBRE
  7.         union select 2, 'Marketing MK'
  8.         union select 3, 'Informatica TI'
  9.         union select 4, 'Capacitacion'
  10.         union select 5, 'Abastecimiento'
  11.         union select 6, 'Recursos Humanos RR'
  12.     ) as cat_departamento;
Código Resultado:
Ver original
  1. ID  NOMBRE                  FINAL
  2. 1   Contabilidad CT         Contabilidad
  3. 2   Marketing MK            Marketing
  4. 3   Informatica TI          Informatica
  5. 4   Capacitacion            Capacitacion
  6. 5   Abastecimiento          Abastecimiento
  7. 6   Recursos Humanos RR     Recursos Humanos

Etiquetas: blanco, caracteres, espacio, forma, registro, select, tabla, ultimo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:35.