Hugo,

Funcionou perfeitamente!
Muito obrigado..
Abraço.

Renato Becker



Em 8 de novembro de 2011 09:28, Hugo Bastos Bucker
<[email protected]> escreveu:
> 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
>
>
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a