![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|
|
#1
|
||||
|
||||
|
pero podrias usar campos calculados para determinar el importe, en lugar de hacerlo a traves del SQL.
de todas formas creo que tu problema es el campo 'importe', ya que 'sum' creo que siempre devuelve un numero. tendrias que distinguir entre los registros quue tienen importe nulo y los que no.
__________________
“Plantad la semilla de la avaricia en la infértil tierra de la estupidez y obtendreis la bella flor de la mierda” (Confucio) |
|
#2
|
|||
|
|||
|
Prueba algo así
Código:
SELECT
A.COD_CUENTA,
IMPORTE +
(SELECT SUM(IMPORTE)
FROM MOVIMIENTO
WHERE
CERRADO = 'N' AND
CARGO = 'I' AND
FECHA = Current_Date AND
COD_CUENTA = A.COD_CUENTA AND
IMPORTE IS NOT NULL) -
(SELECT SUM(IMPORTE)
FROM MOVIMIENTO
WHERE
CERRADO = 'N' AND
CARGO = 'P' AND
FECHA = Current_Date AND
COD_CUENTA = A.COD_CUENTA AND
IMPORTE IS NOT NULL) SALDO_CIERRE
FROM MOVIMIENTO A, ULTIMO_SALDO B
WHERE
BORRADO <> 'S' AND
CARGO = 'S' AND
A.COD_MOVIMIENTO = B.COD_MOVIMIENTO AND
A.COD_CUENTA = B.COD_CUENTA
|
|
#3
|
||||
|
||||
|
Ademas si actualizas a Firebird 1.5, puedes utilizar COALESCE(IMPORTE, 0)
Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
|
#4
|
|||
|
|||
|
Me sigue dando el mismo resultado con Importe is not null
Ya que si no hay ningún registro k cumpla la condición en la subconsulta me sigue devolviendo null, ya que en Interbase al igual k en muchos otros 234,56 + null + 3445,34 = NULL Mi intención es k ese Null lo tome como 0 y haga lo siguiente: 234,56 + 0 + 3445,34 = ..... Muchas Gracias por Vuestra ayuda..... Última edición por Rabata fecha: 12-02-2004 a las 17:28:48. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|