SELECT COUNT(*) FROM ( SELECT DISTINCT ON(campo1, campo2, campo3) campo1, campo2, campo3, campo4 FROM tabela ORDER BY campo1, campo2, campo3, campo4 ) AS x
Em 5 de fevereiro de 2013 16:59, Pedro B. Alves <[email protected]>escreveu: > Tem como usar isso com o COUNT()? > > > Em 4 de fevereiro de 2013 14:17, Matheus de Oliveira < > [email protected]> escreveu: > >> >> >> 2013/2/4 Pedro B. Alves <[email protected]> >> >> Pessoal, não sei se tem alguna função para solucuinar este problema. >>> >>> >>> SELECT campo1, campo2, campo3, campo4 FROM tabela >>> >>> gostaria de usar um distinct só dos 3 primeiros campos. >>> >>> >>> SELECT DISTINCT(campo1, campo2, campo3), campo4 FROM tabela >>> >>> >>> >> Quase como você escreveu: >> >> SELECT DISTINCT ON(campo1, campo2, campo3) campo1, campo2, campo3, campo4 >> FROM tabela; >> >> Veja que isso implica num resultado não determinístico, ao menos para o >> campo4. Em geral, adiciona-se o mesmo no final do ORDER BY para "escolher" >> qual registro mostrar, nesse caso você "deve" informar os campos usados no >> DISTINCT ON no *início* do ORDER BY: >> >> SELECT DISTINCT ON(campo1, campo2, campo3) campo1, campo2, campo3, campo4 >> FROM tabela >> ORDER BY campo1, campo2, campo3, campo4 ...; >> >> Atenciosamente, >> -- >> Matheus de Oliveira >> Analista de Banco de Dados >> Dextra Sistemas - MPS.Br nível F! >> www.dextra.com.br/postgres >> >> >> _______________________________________________ >> 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 > >
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
