Query - Contagem - Ordenação

22/01/2010

1


Delphi 7 + DBExpress + Firebird 1.5

Olá amigos.

É possível fazer está query?

Campos: C1, C2, C3, C4 (são campos individuais... todos do tipo char... tamanho 2.

Em uma tabela como exemplo (tabela04)
tenho os valores registrados para cada campo
conforma abaixo.

C1 = 01
C2 = 02
C3 = 03
C4 = 04

C1 = 05
C2 = 16
C3 = 23
C4 = 48

C1 = 08
C2 = 16
C3 = 34
C4 = 41

C1 = 05
C2 = 16
C3 = 23
C4 = 48

então... nos registro 1 e 3 os valores de c1, c2, c3 e c4 são iguais.

gostaria de poder obter todos os registro da tabela
de forma que ficasse da forma abaixo em um grid
ou outro componente similar.

Ou seja a query contaria as ocorrencias iguais de c1 a c4
e me retornaria distantamente os registros e seus totais de repetições.

Aqui ordenado pelos campos C1, C2, C3, C4

C1 C2 C3 C4 COUNT

01 02 03 04  1
05 16 23 48  2
08 16 34 41  1

ou ordenado por COUNT em ordem decrescente.

C1 C2 C3 C4 COUNT

05 16 23 48  2
08 16 34 41  1
01 02 03 04  1

Agradeço desde já a todos.


Responder

Posts

se eu entendi direito a sua dúvida, essa é a forma mais simples de agrupamento.

select C1, C2, C3, C4, count(C4)
from tabela
group by C1, C2, C3, C4
order by 5

ou ordenando inversamente, com
order by 5 desc



Responder