[firebase-br] Ajuda em SQL
Prisma Sistemas - Moacir
prismars em prismars.com.br
Qua Mar 2 00:18:25 -03 2005
auristonlopes,
1) Numa union todos os campos devem ser iguais nos select´s, veja como:
Select Cast(0 as Numeric(15,2)) as tentradas,
Cast(0 as Numeric(15,2)) as tsaidas,
Cast(sum(entradas)-sum(saidas) as numeric(15,2)) as Saldo
from movprod
where data_emi <= '01/01/05'
union
Select Cast(sum(entradas) as Numeric(15,2)) as Tentradas,
Cast(sum(saidas) as Numeric(15,2)) as Tsaida,
Cast(sum(entradas)-sum(saidas) as numeric(15,2)) as Saldo
from movprod
where data_emi >= '01/01/05'
2) Procure usar parametros, evitara uma serie de dores de cabeça. Veja como:
with Ibquery1 do
Begin
Close;
SQL.Text:='Select Cast(0 as Numeric(15,2)) as tentradas, ';
SQL.Add(' Cast(0 as Numeric(15,2)) as tsaidas, ');
SQL.Add(' Cast(sum(entradas)-sum(saidas) as numeric(15,2)) as Saldo ');
SQL.Add(' from movprod ');
SQL.Add(' where data_emi <=:DATA ');
SQL.Add(' union ');
SQL.Add(' Select Cast(sum(entradas) as Numeric(15,2)) as Tentradas, ');
SQL.Add(' Cast(sum(saidas) as Numeric(15,2)) as Tsaida, ');
SQL.Add(' Cast(sum(entradas)-sum(saidas) as numeric(15,2)) as Saldo ');
SQL.Add(' from movprod ');
SQL.Add(' where data_emi >=:DATA ');
ParamByName('DATA').AsDateTime:=StrToDate('01/01/05'); // ou
ParamByName('DATA').AsDateTime:=StrToDate(Edit1.Text);
Open;
end;
[ ]´s
Moacir
auristonlopes escreveu:
>Caros colegas,
>preciso de montar uma query da seguinte forma:
>Select sum(entradas)-sum(saidas) from movprod where data_emi <= '01/01/05'
>union (Select sum(entradas) as Tentradas, sum(saidas) as Tsaida from movprod
>where data_emi >= '01/01/05')
>Só que não funcionou, se algum colega puder montar esta query para mim, eu
>agradeço, é que ainda estou engatinhando no sql.
>sds
>Auriston
>
>
>------------------------------------------------------------------------
>
>______________________________________________
>FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>
>------------------------------------------------------------------------
>
>No virus found in this incoming message.
>Checked by AVG Anti-Virus.
>Version: 7.0.300 / Virus Database: 266.5.5 - Release Date: 1/3/2005
>
>
--
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.300 / Virus Database: 266.5.5 - Release Date: 1/3/2005
Mais detalhes sobre a lista de discussão lista