Ver Mensaje Individual
  #2 (permalink)  
Antiguo 11/12/2008, 01:47
jurena
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Como Selecciono el texto a la derecha del guion - ?

La mejor opción es, creo, esta, si siempre aparece el guión y sólo hay uno:
Código sql:
Ver original
  1. SELECT SUBSTRING_INDEX(campo,'-',-1) trasguion FROM tabla
Si usas 1, en lugar de -1 te sacará la primera parte, la anterior al guión.

Esto, algo más elaborado, hace lo mismo. Y así lo hacíamos antes de contar con substring_index()
Código sql:
Ver original
  1. SELECT SUBSTRING( campo, POSITION( '-' IN campo ) +1 ) trasguion FROM tabla
Presenta la ventaja de que en caso de haber más de un guión, sigue haciendo bien su trabajo y no hace falta retocarla, algo que sí tendrías que hacer con la anterior de haber más de un guión.

con POSITION (...IN) ubicas la posición donde está el guión; luego haces un SUBSTRING para traerte desde esa posicion más uno, para no traerte también el guión, y lo llamas como quieras (yo lo he llamado trasguion). Si quieres evitar también los espacios en blanco le haces un trim.

Código sql:
Ver original
  1. SELECT TRIM(SUBSTRING( campo, POSITION( '-' IN campo ) +1 )) trasguion FROM tabla

también podrías usar LOCATE en lugar de POSITION, pero es lo mismo, aunque con una sintaxis algo distinta.

Última edición por jurena; 11/12/2008 a las 02:01