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

consulta para partir una cadena

Estas en el tema de consulta para partir una cadena en el foro de Bases de Datos General en Foros del Web. muy buenas! tengo un problema. Como puedo partir una cadena para que me devuelva dos partes de esta? por ejemplo: tengo la cadena: "producto AAA ...
  #1 (permalink)  
Antiguo 14/07/2006, 03:50
 
Fecha de Ingreso: julio-2006
Mensajes: 10
Antigüedad: 17 años, 9 meses
Puntos: 0
consulta para partir una cadena

muy buenas! tengo un problema. Como puedo partir una cadena para que me devuelva dos partes de esta?

por ejemplo:

tengo la cadena: "producto AAA REF: 1234"
y quiero que me devuelva por un lado "producto AAA" y por otro lado "1234"

Muchas gracias!
  #2 (permalink)  
Antiguo 14/07/2006, 03:57
 
Fecha de Ingreso: julio-2006
Mensajes: 10
Antigüedad: 17 años, 9 meses
Puntos: 0
la base de datos es access!
  #3 (permalink)  
Antiguo 14/07/2006, 04:12
 
Fecha de Ingreso: julio-2006
Mensajes: 10
Antigüedad: 17 años, 9 meses
Puntos: 0
yo mismo he encontrado la respuesta:

SELECT TABLA.CELDA,
Left(CELDA,InStr(CELDA,'REF:')-2) AS Expr2,
RIGHT(CELDA,Len(CELDA)-InStr(CELDA,'REF:')-3)
FROM TABLA;
  #4 (permalink)  
Antiguo 14/07/2006, 04:27
 
Fecha de Ingreso: julio-2006
Mensajes: 10
Antigüedad: 17 años, 9 meses
Puntos: 0
tengo otra duda:

cuando en el texto no hay "REF:", porque el producto no tiene referencia, me devuelve #error.
¿Como puedo hacer para que si no hay "REF:" me salga vacío?

Ejemplo:

Si tengo esto:

producto AAA REF: 1234
producto BBB
producto CCC REF: 5678

Que me devuelva esto:

"producto AAA" "1234"
"producto BBB" " "
"producto CCC" "5678"
  #5 (permalink)  
Antiguo 17/07/2006, 11:02
 
Fecha de Ingreso: abril-2003
Ubicación: Madrid
Mensajes: 707
Antigüedad: 21 años
Puntos: 0
Con algo así

SELECT TABLA.CELDA, IIF(InStr(CELDA,'REF:')>0,
Left(CELDA,InStr(CELDA,'REF:')-2),CELDA) AS Expr2,
InStr(CELDA,'REF:')>0,RIGHT(CELDA,Len(CELDA)-InStr(CELDA,'REF:')-3),'') As Expr3
FROM TABLA;

Un saludo
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 01:12.