none
Group by com ajuda de Max() RRS feed

  • Pergunta


  • Olá pessoas, bem gostaria de saber como ficaria para essa instrução sql me retorne o max(de um campo)

        select
            dbo.fn_PegaProprietario (71, pv.cd_proposta) as proprietario,
            pv.cd_proposta proposta,
            71 classe,
            '../interfacecomercial/veroportunidadecliente.aspx?IDU=0&IDS=5&IDA=7&CODIGO=' + cast(e.cd_entidade as char(5)) + '&ID_CLIENTE=' + cast(e.cd_entidade as char(5)) + '&STATUS=1' as Link,
            pv.vl_servico as Servico,
            pv.cd_propostaver as PropostaVer,
            pv.nr_versao as Versao
        from proposta_versao pv
        inner join proposta p on
            pv.cd_proposta = p.cd_proposta and
            p.cd_status = 1
        inner join oportunidade o on
            p.cd_oportunidade = o.cd_oportunidade
        inner join designacao d on
            d.cd_designacao = o.cd_designacao
        inner join entidade e on
            d.cd_entidade = e.cd_entidade
        where (select Total from dbo.vw_TotaisOportunidade where tipo = 'Serviço' and cd_pipeline = o.cd_oportunidade and ds_sigla = 'R$') > 1000 -- Servico sempre vai ser em reais.


    O retorno desse select seria algo que eu estou realmente querendo, só que o número da versão da proposta, poderia mudar, isso acontecerá se no nosso sistema o cara alterar valores, sendo assim, geraria um numero novo de versao da proposta. Bem o meu problema é esse, quero pegar o max, agrupando pelo código da proposta.

    Desde já agradeço, eu não estou conseguindo... Obrigado...
    quinta-feira, 17 de maio de 2007 16:47

Todas as Respostas

  • Olá Vinicius,

     

    Quando você altera uma versão da proposta o que ocorre com a tabela proposta e com a tabela proposta_versão?

    Os campos vl_servico e cd_propostaver são diferentes para o mesmo código da proposta?

     

    De antemão você pode tentar:

     

     select
            dbo.fn_PegaProprietario (71, pv.cd_proposta) as proprietario,
            pv.cd_proposta proposta,
            71 classe,
            '../interfacecomercial/veroportunidadecliente.aspx?IDU=0&IDS=5&IDA=7&CODIGO=' + cast(e.cd_entidade as char(5)) + '&ID_CLIENTE=' + cast(e.cd_entidade as char(5)) + '&STATUS=1' as Link,
            pv.vl_servico as Servico,
            pv.cd_propostaver as PropostaVer,
            max(pv.nr_versao) as Versao
        from proposta_versao pv

    ...

    group by pv.cd_proposta,pv.vl_servico,pv.cd_propostaver

     

    Espero ter ajudado


     

     

    sexta-feira, 18 de maio de 2007 00:45