Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 01-10-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Un comentario: decir que trabajas con BDE no es decir mucho ya que el bde te sirve para acceder a varios tipos de bases de datos.

Suponiendo que estás trabajando con Paradox, en efecto, no puedes usar condicionales. Pero en el caso particular que quieres puedes lograrlo así:

Código SQL [-]
select
  num, sum((2*cast(tipo as smallint) - 1)*cantidad)
from
  tabla
group by
  num

El cast convierte el tipo booleano a entero (false->0, true->1) de manera que al multiplicar por 2 y restar 1 obtienes

false -> -1
true -> 1

Éste es el factor que necesitas para cantidad de manera que obtienes +cantidad si tipo=true y -cantidad si tipo=false, que es lo que requieres para sumar o restar según el caso.

Para el otro problema, además de que deberás abrir un nuevo hilo ya que no se relaciona con la primera pregunta, deberás especificar con mayor claridad.

// Saludos
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 06:23:19.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi