Bom dia Renato,
Em 8 de novembro de 2011 07:10, Renato Augusto <[email protected]>escreveu:
> Bom dia a todos,
>
> Estou com a seguinte situação nesse SQL:
>
> SELECT mod1.tb_oper_id AS operacao,
> mod1.tb_modoper_tempo_bruto AS tempo_bruto,
> mod1.tb_modoper_valorcusto AS valor_custo,
> estabset1.tb_estset_eficcustos AS eficiencia,
> ROUND((mod1.tb_modoper_tempo_bruto /
> (estabset1.tb_estset_eficcustos / 100)),5) AS tempo_total,
> ROUND((mod1.tb_modoper_valorcusto),5) AS valor_total,
> tipooper1.tb_tipooper_tipo AS tipo_oper,
> sch_custos.fun_custo_minuto_setor(mod1.sis_emp_id,
> emp1.par_scu_tipo_calc_custo_minuto, pestab, oper1.tb_set_id,
> tipooper1.tb_tipooper_tipo) AS custo_minuto,
> FROM sch_pcp.tb_modoper mod1 ....
>
>
Você pode tentar usar o WITH assim:
WITH consulta AS (
SELECT mod1.tb_oper_id AS operacao,
mod1.tb_modoper_tempo_bruto AS tempo_bruto,
mod1.tb_modoper_valorcusto AS valor_custo,
estabset1.tb_estset_eficcustos AS eficiencia,
ROUND((mod1.tb_modoper_tempo_
>
> bruto /
> (estabset1.tb_estset_eficcustos / 100)),5) AS tempo_total,
> ROUND((mod1.tb_modoper_valorcusto),5) AS valor_total,
> tipooper1.tb_tipooper_tipo AS tipo_oper,
> sch_custos.fun_custo_minuto_setor(mod1.sis_emp_id,
> emp1.par_scu_tipo_calc_custo_minuto, pestab, oper1.tb_set_id,
> tipooper1.tb_tipooper_tipo) AS custo_minuto,
> FROM sch_pcp.tb_modoper mod1 ....
>
) SELECT * FROM consulta WHERE tempo_total > 10;
> O que acontece é que tenho que chamar mais uma Function ->
> sch_pcp.fun_valor_impostos_operacao() onde um de seus parâmetros é o
> resultado da expressão do primeiro ROUND e outro parâmetro é o
> resultado da Function sch_custos.fun_custo_minuto_setor() chamada
> também no SQL..
> O resultado desta Function de valor de impostos deve ser aproveitado
> no cálculo para encontrar o Valor Líquido Final.
>
>
> A questão é:
> - Como o Alias do Round nem da Function é reconhecido dentro da
> sentença, é possível armazenar um valor calculado em uma expressão ou
> o valor do Result de uma Function para ser aproveitado na mesma
> sentença sem fazer novamente a chamada desta Function ?
>
> Obrigado.
>
> Renato Becker.
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
Abraços.
Hugo B. Bucker
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral