Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   En SQL server COMPUTE y en INTERBASE? (https://www.clubdelphi.com/foros/showthread.php?t=269)

tulio 09-05-2003 16:47:25

En SQL server COMPUTE y en INTERBASE?
 
Hola Foro

Les comento que alguna vez en sql server use la instruccion COMPUTE y estoy buscando la equivalente en INTERBASE y no la encuentro , si alguien conoce su equivalente se lo agradezco

el query que quiero hacer es
SELECT
a.nro_prove,a.nro_factu,sum(a.importe+a.impo_iva),
(select sum(J.importe) From pagos_par J where J.nro_factu=a.nro_factu and J.nro_prove=a.nro_prove)
From FaCtu_a_pag A
where a.estado='I' group by a.nro_prove ,a.NRO_FACTU

COMPUTE SUM(a.importe+a.impo_iva-J.importe) BY A.NRO_PROVE

saludos y gracias

kinobi 09-05-2003 19:17:45

Hola,

no sé qué hace exactamente la función COMPUTE en MSSQL-Server, pero si no encuentras equivalente en InterBase (las funciones incorporadas son muy escasas) siempre tienes la posibilidad de utilizar funciones definidas por el usuario (UDF). En la documentación se trata el tema (de las UDFs).

Saludos.

jachguate 09-05-2003 23:48:02

Tampoco conozco MS-SQL, ni se lo que queres conseguir, pero creo que lo que buscas es un Group By.

Si no, también podes conseguir cosas interesantes con Stored Procedures del tipo.

Código:

Create Procedure a
Returns (
  Numero integer
)
AS
Begin
  For Select numero
  from tabla
  into :Numero
 where condicion Do
    Break;
End;

Hasta luego.

jgutti 10-05-2003 16:41:04

Yo he usado en interbase lo sgte

Total computed by (cantidad * preciounitario);

- Computed By la utiliza en la definición de tablas;

sum(cantidad) * sum(PrecioUnitario) as Total

- Sum la utiliza en la a nivel de ibdataset;

Espero que te sirva.

atte.

JGutti

tulio 12-05-2003 13:15:58

Gracias a
Kinobi,Jachguate y jgutti

Lo estoy solucionando a mi problema con un view y luego hago un group by de esa nueva vista.

El compute de sql server hace un group by totalizado de la tabla ,
si ustedes ven mi query de la pregunta, el compute me agruparia el resultado de lo que arroja la primera parte de la consulta.

Saludos y gracias
tulio


La franja horaria es GMT +2. Ahora son las 01:32:32.

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