Tem como fazer isso no Firebird

Firebird

25/06/2008

Boa Tarde. Tenho uma de Tabela feito no SQL Server 2005, contendo os campos VALOR e NOME, cuja consulta ficou assim:

DECLARE @Total NUMERIC(10,2)
SET @Total = (SELECT SUM(VALOR) FROM Pecas)

SELECT
VALOR, NOME, ((VALOR / @Total)* 100) AS PERCENTUAL
FROM
Pecas


Gostaria de saber se tem como fazer igual ou algo parecido no Firebird 1.5, sem ter que usar uma Procedure.


Itaqui

Itaqui

Curtidas 0

Respostas

Emerson Nascimento

Emerson Nascimento

25/06/2008

tente assim:
SELECT
  VALOR, NOME,
  ((VALOR / (SELECT SUM(VALOR) FROM Pecas)) * 100) AS PERCENTUAL
FROM
  Pecas

creio que a performance fique comprometida, pois o total será calculado para cada uma das linhas retornadas


GOSTEI 0
Itaqui

Itaqui

25/06/2008

Obrigado Emerson, era isso mesmo que eu queria. Quanto ao desempenho vou verificar se compensa implementar dessa maneira.


GOSTEI 0
POSTAR