[firebase-br] Campo Calculado em Select

RAMJ SISTEMAS & CONSULTORIA jubrovolski em yahoo.com.br
Sex Fev 4 05:56:59 -03 2005


Tenho a seguinte instrucao Sql

SELECT E.CODPROD
     , E.DESCPROD
     , CASE
          WHEN E.TIPO = 'J' THEN 'JÓIA'
          WHEN E.TIPO = 'B' THEN 'BIJUTERIA'
       END AS DESCTIPO
     , E.MATPRIMA
     , CASE
          WHEN E.MATPRIMA = 'M' THEN 'MATÉRIA-PRIMA'
          WHEN E.MATPRIMA = 'F' THEN 'PRODUTO FINAL'
       END AS DESCMATPRIMA
     , E.CODBARRA
     , E.PESO
     , E.MARGEM
     , E.CUSTO
     , E.PRECO01
     , E.PRECO02
     , E.FOTO
     , E.CODCOLECAO
     , A.DESCCOLECAO
     , E.CODGRUPO
     , B.DESCGRUPO
     , E.TIPO
     , C.DATAOCORR
     , CASE
          WHEN E.TIPO = 'J' THEN
(((C.VLROURO/1000)*(B.FATORBANHO+B.FATORSERVICO)+E.CUSTO)*E.PESO)
       END AS CUSTOOURO
     , CASE
          WHEN E.TIPO = 'J' THEN
((((C.VLROURO/1000)*(B.FATORBANHO+B.FATORSERVICO)+E.CUSTO)*E.PESO)*(E.MARGEM
/100))+
 
(((C.VLROURO/1000)*(B.FATORBANHO+B.FATORSERVICO)+E.CUSTO)*E.PESO)
       END AS PRECOOURO
     , CASE
          WHEN E.TIPO = 'J' THEN
(((C.VLRPRATA/1000)*(B.FATORBANHO+B.FATORSERVICO)+E.CUSTO)*E.PESO)
       END AS CUSTOPRATA
     , CASE
          WHEN E.TIPO = 'J' THEN
((((C.VLRPRATA/1000)*(B.FATORBANHO+B.FATORSERVICO)+E.CUSTO)*E.PESO)*(E.MARGE
M/100))+
 
(((C.VLRPRATA/1000)*(B.FATORBANHO+B.FATORSERVICO)+E.CUSTO)*E.PESO)
       END AS PRECOPRATA
FROM PRODUTOS E
LEFT JOIN COLECAO A ON (A.CODCOLECAO = E.CODCOLECAO)
LEFT JOIN GRUPOS B ON (B.CODGRUPO = E.CODGRUPO)
LEFT JOIN PRECOBANHO C ON (C.DATAOCORR = DATAOCORR)

Duas Perguntas: 1-> usando o CASE criei um campo chamado CUSTOURO. Como usar
este campo no case abaixo PRECOOURO. Gostaria que ficasse algo assim: ( se
for possível é claro )
     , CASE
          WHEN E.TIPO = 'J' THEN (CUSTOOURO*(E.MARGEM/100))+CUSTOOURO   
       END AS PRECOOURO

2->Na linha C.DATAOCORR, preciso rotarnar a data maior algo assim:
     , MAX(C.DATAOCORR)

Se alguém puder me ajudar, desde já agradeço

Reuber








Mais detalhes sobre a lista de discussão lista