Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Bases de Datos General (http://www.forosdelweb.com/f21/)
-   -   case when (http://www.forosdelweb.com/f21/case-when-585907/)

chuchufuentes 13/05/2008 09:03

case when
 
Esto no trabaja, por favor alquien tiene una mejor idea

select
CASE @PagoDesc
WHEN 'CA' THEN select @Total_PAGOEFECTIVO = @Total_PAGOEFECTIVO + @montotemp
WHEN 'CC' THEN select @Total_PAGOCREDITO = @Total_PAGOCREDITO + @montotemp
WHEN 'EX' THEN select @Total_PAGOCANJE = @Total_PAGOCANJE + @montotemp
WHEN 'MC' THEN select @Total_PAGOMCO = @Total_PAGOMCO + @montotemp
WHEN 'FD' THEN select @Total_PAGOFACTDIRECT = @Total_PAGOFACTDIRECT + @montotemp
WHEN 'AF' THEN select @Total_PAGOAFILIACION = @Total_PAGOAFILIACION + @montotemp
WHEN 'EO' THEN select @Total_PAGOCANJEOTRAS = @Total_PAGOCANJEOTRAS + @montotemp
ELSE select @Total_PAGOMCOOTRAS = @Total_PAGOMCOOTRAS + @montotemp
END

Gracias

flaviovich 13/05/2008 17:10

Re: case when
 
Se me ocurre:
Código:

if @PagoDesc = 'CA' set @Total_PAGOEFECTIVO = @Total_PAGOEFECTIVO + @montotemp
if @PagoDesc = 'CC' set @Total_PAGOCREDITO = @Total_PAGOCREDITO + @montotemp
...

Si piensas un poco mas puede haber una forma mas corta ;)

chuchufuentes 14/05/2008 12:25

Re: case when
 
Gracias por responder, la tenia antes con los if como me indicas, pero quiero usar los Case When por que la programacion es mas corta y supuestamente mas rapida la velocidad del SP. Anyway gracias de nuevo


La zona horaria es GMT -6. Ahora son las 02:29.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.