Em 4 de maio de 2016 22:19, Jean Alysson <jeanp...@gmail.com> escreveu: > > Ola, preciso fazer o select abaixo, tem que retornar somente um registro, > mas como o campoString é diferente, retornam varios registros, como posso > resolver ? > > SELECT max(campoInteger), campoString > FROM tabela > where outroCampoInteger = 31 > group by campoInteger, campoString > > já tentei colocar max(campoString), mas não deu certo , retorna um registro, > mas misturou o campoInteger de um registro com o campoString de outro registro
Deduzi que você quer os dois campos para o valor máximo de campoInteger, certo? Veja se isso te ajuda: SELECT t1.campoInteger, t1.campoString FROM tabela t1 WHERE t1.outroCampoInteger = 31 AND t1.campoInteger = ( SELECT MAX(t2.campoInteger) FROM tabela t2 WHERE t2.outroCampoInteger = t1.outroCampoInteger ) TIAGO J. ADAMI http://www.adamiworks.com @tiadami _______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral