Carregando ...
Desculpe, ocorreu um erro ao carregar o conteúdo.
 

SQL - group by.

Expandir mensagens
  • Rogério Pett
    Olá pessoal, Gostaria de uma ajudinha num SQL digamos que tenho uma tabela com os seguintes dados. codigo - descricao - arquivo 1 - desc1 - a 1 - desc1 - b 1
    Mensagem 1 de 3 , 12 de mar de 2015
      Olá pessoal,

      Gostaria de uma ajudinha num SQL
      digamos que tenho uma tabela com os seguintes dados.

      codigo - descricao - arquivo
      1 - desc1 - a
      1 - desc1 - b
      1 - desc1 - c
      2 - desc2 - d
      2 - desc2 - e
      3 - desc3 - f
      3 - desc3 - g
      4 - desc4 - h
      4 - desc4 - i

      Preciso retornar somente o primeiro registro de cada conjunto... seria assim
      codigo - descricao - arquivo
      1 - desc1 - a
      2 - desc2 - d
      3 - desc3 - f
      4 - desc4 - h

      O seguinte SQL, no firebird trás todos registros. E se tirar o campo ARQUIVO no group by não funciona.
      select CODIGO, DESCRICAO, ARQUIVO from TABELA
      group by CODIGO, DESCRICAO, ARQUIVO


      no MySQL funciona retirando o campo ARQUIVO da clausula group by.

      tem alguma maneira de fazer isso no firebird?

      []'s
      Rogério Pett
      www.pett.com.br

      ------------------------------
    • Henrique Meira
      Pode ser assim: select CODIGO, DESCRICAO, min(ARQUIVO) as arquivo from TABELA group by CODIGO, DESCRICAO Em 12 de março de 2015 11:04, Rogério Pett
      Mensagem 2 de 3 , 12 de mar de 2015
        Pode ser assim:

        select CODIGO, DESCRICAO, min(ARQUIVO) as arquivo
         from TABELA
        group by CODIGO, DESCRICAO



        Em 12 de março de 2015 11:04, Rogério Pett rogeriopett@... [cflp_suporte] <cflp_suporte@...> escreveu:


        Olá pessoal,

        Gostaria de uma ajudinha num SQL
        digamos que tenho uma tabela com os seguintes dados.

        codigo - descricao - arquivo
        1 - desc1 - a
        1 - desc1 - b
        1 - desc1 - c
        2 - desc2 - d
        2 - desc2 - e
        3 - desc3 - f
        3 - desc3 - g
        4 - desc4 - h
        4 - desc4 - i

        Preciso retornar somente o primeiro registro de cada conjunto... seria assim
        codigo - descricao - arquivo
        1 - desc1 - a
        2 - desc2 - d
        3 - desc3 - f
        4 - desc4 - h

        O seguinte SQL, no firebird trás todos registros. E se tirar o campo ARQUIVO no group by não funciona.
        select CODIGO, DESCRICAO, ARQUIVO from TABELA
        group by CODIGO, DESCRICAO, ARQUIVO


        no MySQL funciona retirando o campo ARQUIVO da clausula group by.

        tem alguma maneira de fazer isso no firebird?

        []'s
        Rogério Pett
        www.pett.com.br

        ------------------------------



      • Rogério Pett
        haha.. Obrigado Henrique, sempre pensei que o min, max e avg funcionariam apenas com campos numéricos. kiburro... dá zero pra mim!! ;) [] s *Rogério
        Mensagem 3 de 3 , 12 de mar de 2015
          haha.. Obrigado Henrique,
          sempre pensei que o min, max e avg funcionariam apenas com campos numéricos.
          kiburro... dá zero pra mim!! ;)


          []'s
          Rogério Pett
          www.pett.com.br

          ------------------------------

          Em 12 de março de 2015 12:04, Henrique Meira henrique@... [cflp_suporte] <cflp_suporte@...> escreveu:
           

          Pode ser assim:

          select CODIGO, DESCRICAO, min(ARQUIVO) as arquivo
           from TABELA
          group by CODIGO, DESCRICAO



          Em 12 de março de 2015 11:04, Rogério Pett rogeriopett@... [cflp_suporte] <cflp_suporte@...> escreveu:


          Olá pessoal,

          Gostaria de uma ajudinha num SQL
          digamos que tenho uma tabela com os seguintes dados.

          codigo - descricao - arquivo
          1 - desc1 - a
          1 - desc1 - b
          1 - desc1 - c
          2 - desc2 - d
          2 - desc2 - e
          3 - desc3 - f
          3 - desc3 - g
          4 - desc4 - h
          4 - desc4 - i

          Preciso retornar somente o primeiro registro de cada conjunto... seria assim
          codigo - descricao - arquivo
          1 - desc1 - a
          2 - desc2 - d
          3 - desc3 - f
          4 - desc4 - h

          O seguinte SQL, no firebird trás todos registros. E se tirar o campo ARQUIVO no group by não funciona.
          select CODIGO, DESCRICAO, ARQUIVO from TABELA
          group by CODIGO, DESCRICAO, ARQUIVO


          no MySQL funciona retirando o campo ARQUIVO da clausula group by.

          tem alguma maneira de fazer isso no firebird?

          []'s
          Rogério Pett
          www.pett.com.br

          ------------------------------




        Sua mensagem foi enviada com êxito e será entregue aos destinatários em breve.