Hola, me gustaría saber cual es la instrucción para poder contar los registros en una consulta de cada cliente, es decir, si tengo POR clientes y a cada cliente le pongo 1, 2, 3,... POR registros, como puedo saber cuantos registros le he metido a cada cliente. Gracias de antemano.
Respuesta de dayvitt
1
1
dayvitt, Soy: Programador-analista de aplicaciones en Lenguaje C...
Por lo que he entendido tienes dos tablas, una de clientes y otra de registros. Si tienes formularios creados iremos más rapido. ¿Supongo qué tienes un formulario con un subformulario dentro que te muestra los registros de ese cliente no? Para saber cuantos registros tiene el cliente en pantalla tenemos que crear dentro de ese subformulario un Textbox independiente donde el origen de datos sea =Cuenta(IdRegistro) <- IdRegistro se refiere a la clave principal de la tabla registros. Si lo tienes o quieres de otra manera házmelo saber
Efectivamente tengo 2 tablas, una de jugadores donde meto datos de jugadores y otra de tarjetas donde meto la fecha y la tarjeta... ej: Tabla jugadores-----> jugador 1 jugador 2 jugador 3 ... tabla tarjetas--------> dia 8/5/2009 dia 10/5/2009 dia 10/6/2009 '''''''''''''''''' ''''''''''''''' ''''''''''''''''' Lo qué quiero saber es como puedo hacer una consulta de cuantas tarjetas tiene el jugador 1 y si puedo saber cuantas tarjetas tiene el jugador 1 del 08/05/2009 al 25/05/2009???? Gracias
Bien, He supuesto varias cosas que no se si lo tienes así o no, pero si no es lo puedes hacer sencillamente. Suposiciones: 1. En la tabla jugadores hay un IdJugador numérico que identifica cada jugador 2. En la tabla tarjetas existe un campo llamado Tipo que indica si es Roja o Amarilla 3. En la tabla tarjetas también existe un IdJugador que indica a que jugador se le ha mostrado 4. Existe una relación de 1 a varios de jugadores a tarjetas de ese IdJugador Partiendo de aquí, creamos una consulta cogiendo los datos de las dos tablas. Los datos que necesitamos es: jugadores. Nombre, tarjetas, tarjetas. Fecha y tarjetas. Tipo Para saber todas las tarjetas que tienen haremos una tabla de referencias cruzadas de esta consulta que acabamos de crear: TRANSFORM Count(Consulta.Fecha) AS CuentaDeFecha SELECT Consulta.Nombre, Count(Consulta.Fecha) AS Total FROM Consulta GROUP BY Consulta.Nombre PIVOT Consulta.Tipo; Si quisiéramos hacer un rango de fechas, en la consulta creada le añadiremos un criterio en el campo Fecha como este: >[Fecha inicio] Y <[Fecha fin] Y así, al abrir la tabla de referencias cruzadas nos pedirá el rango de fechas
¿Cómo creo una tabla de referencias cruzadas? Porque no se puede hacer la consulta sin crear otra tabla, ¿ya qué los datos los tengo ya introducidos? Con el Código que me has puesto, creo que me saca todas las tarjetas de todos los jugadores, y lo que quiero que me cuente en la consulta es lo siguiente: JUGADORES CON 1 TARJETA AMARILLA ... : 5 jugadores en total JUGADORES CON 2 TARJETAS AMARILLAS: 2 jugadores en total JUGADORES CON 3 TARJETAS AMARILLAS: 6 jugadores en total ... por ... CONCLUSIÓN DE LA CONSULTA : tendría un total de 27 tarjetas introducidas pero quiero saber cuantos jugadores en total tengo en el grupo de Nº de tarjetas. ¿Por cierto donde tengo que meter el código? Muchas Gracias y perdona mi desconocimiento.
No te estoy diciendo de hacer otra tabla, solo te digo que hagas una consulta, a partir de las otras dos tablas que tienes. Y en esa consulta pongas el campo nombre de la tabla de jugadores y el campo fecha y tipo de tarjeta de la tabla de tarjetas. A esa consulta ponle de nombre "Consulta" Para lo que tu pides, el código SQL es el siguiente: TRANSFORM Count(Consulta.Nombre) AS CuentaDeNombre SELECT Consulta.Fecha, Count(Consulta.Nombre) AS Total FROM Consulta GROUP BY Consulta.Fecha PIVOT Consulta.Tipo; Y para introducir ese código, solo tienes que ir a vista diseño de otra consulta en blanco y en la pestaña de vista arriba a la izquierda, seleccionas SQL. Y pegas lo que te he puesto