Ver Mensaje Individual
  #5 (permalink)  
Antiguo 26/07/2012, 10:43
mrprogman
 
Fecha de Ingreso: junio-2011
Mensajes: 329
Antigüedad: 13 años, 4 meses
Puntos: 2
Respuesta: Separacion por Coma

estoy haciendo una consulta a una bd de sql server..a un campo llamado PAYTYPE, en ese campo estoy buscando que me muestre todos los registro que tienen un numero 2, este campo esta separado por comas EJEMPLO (2 ;1;;;), al mismo tiempo en otro campo llamado PAYAMT me busca la primera cifra separada por comas correspondiente al mismo registro (20;-60;0;0;0 )


ejemplo:

paytype (2 ;1;;;)
Payamt (20;-60;0;0;0 )
Resultado: 20

El problema es cuando el No. 2 del campo PAYTYPE NO ESTA EN EL PRIMER REGISTRO

ejemplo:

paytype (1 ;2;;;)
Payamt (20;-60;0;0;0 )
EL RESULTADO TENDRIA QUE SER
Resultado: -60

pero sigo obteniendo el 20, es decir no se como recorrer la busqueda del campo dependiendo de la ubicacion del campo no 2...espero haberme explicado..anexo el codigo que tengo..el cual hace el primer ejemplo pero no me cumple con la segunda condicion...gracias por sus respuestas


SELECT distinct tnum,type,
substring(PAYAMT, 1, charindex(';', payamt)-1) payamt,
substring(payamt, charindex(';', payamt)+1, len(PAYAMT)) payamt
FROM sales2 WHERE (([PAYTYPE] LIKE '%' + '2' + '%')) AND ([IDATE] >= @idate) AND ([IDATE] <= @idate2)