PDA

Ver la Versión Completa : Saber cuantas veces se repite un dato en una tabla


Tangela
18-08-2005, 00:51:24
Hola a todos:
La cuestión es la siguiente:
Tengo una tabla (tbFaltas) con 8 campos; en cinco de ellos se pueden repetir los datos (nombres de personas que hacen sustituciones).
Todos estos nombres están contenidos en una tabla aparte (tbProfes).
¿Cómo puedo saber cuántas veces se repite cada nombre en la tabla tbFaltas?
¿Se puede hacer por medio de una consulta única, con una estructura parecida a esto...

for i:= 1 to tbProfes.Recordcount do
begin
With AdoQuery1 do
begin
Close;
Sql.Clear;
Sql.Add ('Select............');
Open
end;
Hacer lo que sea...
end;

La verdad es que yo lo he hecho con una consulta por cada campo y totalizando los datos por medio de variables( y funciona bien), pero me parece un poco chapuza y me gustaría saber si hay alguna forma más elegante.

Gracias

Delphius
18-08-2005, 05:35:57
me parece que con una consulta como esta:

Select tbProfres.Campo, Count(tbFaltas.Campo_en_cuestion)
From tbProfes P, tbFaltas F
Where P.Campo = F.campo

La sentencia Count te permitirá contar las veces que se ha repetido en dicho campo (Campo_en_cuestion) aquellos valores que cumplan la condición P.campo = F.campo

vtdeleon
18-08-2005, 06:31:13
Saludos
Par obtener los registro repetidos en una tabla:
select distinct codigo
FROM tabla WHERE codigo In (SELECT codigo FROM
tabla As Tmp GROUP BY codigo HAVING Count(*)>1)
ORDER BY codigo; Para varias, chequealo y hazle uno cambios