Contar campos que cumplen una condición

Tengo una tabla clientes con sus datos, uno de los campos es el id, y tengo otro campo en el que pongo el id del cliente que lo ha recomendado, cuando un cliente me ha recomendado a varios clientes tiene un descuento. Pues bien, estoy haciendo una consulta en SQL que me cuente las recomendaciones de cada cliente y no hay manera de que funcione. He conseguido sacar el nombre de los clientes que tienen recomendaciones pero no consigo sacar cuantas tienen cada uno a la vez.

1 respuesta

Respuesta
1

Carlos: Haz una consulta de datos agrupados:

Arrastra a la Parrilla el IdCliente y si quieres el Nombre.

Añade un Campo que se puede llamar NumRec y lo Formulas así.

NumRec:DCont("RecPor";"Clientes";"[Clientes]![RecPor] = " & IdCliente)

En la línea que el IdCliente le pone Agrupar por, en este campo le pones Expresión

El Campo IdCliente es el que tu llamas Id y el RecPor es el que tu pones como el Id del Cliente que

Lo ha recomendado. Un saludo >> Jacinto

Gracias por la respuesta, y en una sentencia Sql se puede hacer?

Carlos: Pega ésta SQL en una consulta en Blanco (Vista SQL claro está)

SELECT ClientesYRecom.IdAuto, ClientesYRecom.NombreCompañía, DCount("RecPor","ClientesYRecom","ClientesYRecom!RecPor = " & [IdAuto]) AS NumRec
FROM ClientesYRecom;

Adapta los Nombres a los que tu tengas teniendo en cuenta que:

1.- No he agrupado porque parto de la Base de que tu Tabla de Clientes, no tiene Numeros repetidos >> Aquí el IdCliente es >> IdAuto

2.- La Tabla la he he llamado ClientesYRecom

2.- El campo RecPor es un "Numero", que en cada caso será un IdAuto (IdCliente)

3.- NumRec es el campo que te comentaba enmi contestación anterior.

4.- NombreCompañía será el Nombre del Cliente que tu tengas

Mis saludos >> Jacinto

¡Muchas gracias Jacinto! Por fin funciona, me estaba volviendo loco, os copio la sentencia SQL adaptada a los nombres de mi tabla:

SELECT cliente.Id, cliente.Nombre, DCount("cliente.[recomendado por]","cliente","cliente![recomendado por] = " & [Id]) AS NumRec
FROM cliente where (DCount("cliente.[recomendado por]","cliente","cliente![recomendado por] = " & [Id]) ) <>0

Carlos: Me alegra el que hayas solventado ese inconveniente. Si vas de acuerdo con la respuesta y la valoras, perfecto. Aquí estamos. Mis saludos >> Jacinto

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas