Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Que funcion utilizar para contar registros

Estas en el tema de Que funcion utilizar para contar registros en el foro de Bases de Datos General en Foros del Web. ya revise que que no se repita este post, pero si me equivoco ofresco una disculpa. ahora voy a lo que necesito, tengo 2 tablas ...
  #1 (permalink)  
Antiguo 21/07/2009, 19:23
 
Fecha de Ingreso: junio-2009
Mensajes: 18
Antigüedad: 14 años, 11 meses
Puntos: 0
Sonrisa Que funcion utilizar para contar registros

ya revise que que no se repita este post, pero si me equivoco ofresco una disculpa.

ahora voy a lo que necesito, tengo 2 tablas asignacion y gestion> en asignacion tengo numero telefonico y otras descripciones, en la de gestion tengo tambien un campo con el nombre de telefono en esta tabla de gestiones se guardan los numeroa a los que haz marcado con una descripcion:
tabla: asignacion
telefono area
555-555 RH
444-444 Admin

tabla: gestiones

telefono descripcion id usario
555-555 no contesto 1
555-555 no contesta 1
444-444 no contesta 2

tabla>cat_usuario
id usuario nombre
1 fulanita A
2 fulanita B

mi cruce para realizar esta consulta es la siguiente:

$sql=mysql_query("SELECT asignacion.area, asignacion.telefono, MAX(gestiones.telefono) AS num_tel, gestiones.descripcion, cat_usuarios.nombre
FROM ((gestiones INNER JOIN cat_usuarios ON cat_usuarios.id_usuario = gestiones.id_usuario)
INNER JOIN asignacion ON asignacion.telefono = gestiones.telefono) GROUP BY nombre, telefono ORDER BY nombre LIMIT 50; ",$con);

y me muestra lo siguiente:
telefono nombre descripcion
555-555 fulanita A no contesta
555-555 fulanita A no contesta
444-444 fulanita B no contesta

y yo lo que deseo es que me muestre esto>

telefono nombre descipcion
2 fulanita A no contesta
1 fulanita B no contesta

ya intente con el count, max y sum pero no consigo hacerlo, espero que me hayan entendido y me puedan ayudar.

gracias.

Última edición por paconinho; 21/07/2009 a las 19:28
  #2 (permalink)  
Antiguo 21/07/2009, 19:32
Avatar de gildus  
Fecha de Ingreso: agosto-2003
Mensajes: 1.495
Antigüedad: 20 años, 9 meses
Puntos: 105
De acuerdo Respuesta: Que funcion utilizar para contar registros

Holas,

De tu consulta:

Código PHP:
SELECT asignacion.areaasignacion.telefono,
MAX(gestiones.telefono) AS num_tel,
gestiones.descripcion,
cat_usuarios.nombre
FROM 
((gestiones
INNER JOIN cat_usuarios ON cat_usuarios
.id_usuario gestiones.id_usuario)
INNER JOIN asignacion ON asignacion.telefono gestiones.telefonoGROUP BY nombretelefono ORDER BY nombre LIMIT 50
Intenta con esto:

Código PHP:
SELECT asignacion.areaasignacion.telefono,
MAX(gestiones.telefono) AS num_tel,
gestiones.descripcion,
cat_usuarios.nombreCOUNT(cat_usuarios.id) AS cant 
FROM 
((gestiones
INNER JOIN cat_usuarios ON cat_usuarios
.id_usuario gestiones.id_usuario)
INNER JOIN asignacion ON asignacion.telefono gestiones.telefonoGROUP BY nombretelefono ORDER BY nombre LIMIT 50
Aumente el campo, COUNT(cat_usuarios.id) AS cant. El campo MAX(gestiones.telefono) AS num_tel no se si te es util, pero le puedes quitar tambien.

Saludos
Gildus
__________________
.: Gildus :.
  #3 (permalink)  
Antiguo 22/07/2009, 10:11
 
Fecha de Ingreso: junio-2009
Mensajes: 18
Antigüedad: 14 años, 11 meses
Puntos: 0
Sonrisa Respuesta: Que funcion utilizar para contar registros

Gracias .:Gildu:. por el aporte pero aun no hace lo que necesito
si el tel 555-555 se petite 2 o mas veces ahora solo aparece una vez pero como 555-555 y no como 1 o 5 dependiendo de las veces que se repite.

mira lo coloque asi estas son el verdadero nombre de las tablas que uso:
$sql=mysql_query("SELECT asig_master.division, asig_master.area, asig_master.telefono, asig_master.tpc, asig_master.num_plaza,
MAX(log_dictaminacion.telefono) AS num_tel, log_dictaminacion.cve_gestion, log_dictaminacion.fecha_gestion, log_dictaminacion.hora_gestion,
cat_usuarios.nombre_completo, COUNT(cat_usuarios.id_usuario) AS cant
FROM ((log_dictaminacion
INNER JOIN asig_master ON log_dictaminacion.telefono = asig_master.telefono)
INNER JOIN cat_usuarios ON log_dictaminacion.id_usuario = cat_usuarios.id_usuario)
GROUP BY nombre_completo ",$con);
y me muesttra:
solo me muestra 1 telefono por usuario y no el total de numeros que marco
telefono-------nombre
555-55--------fulanita A
444-44--------fulanita B
526-52--------fulanita C

y asi se sigue hasta el numero de usuarios que tenga y yo quiero que se asi:

telefono---nombre
200--------fulanita A
150--------fulanita B
450--------Fulanita C

en tel el numero de veces que marco cada usuario, espero me puedan ayudar.

por ultimo .:Gildu:. como le hago para poner mi texto o codigo asi como lo tienes dentro de un cuadro, perdon por esta pregunta pero soy nuevo en el foro y aun no se utilizar todas las herramientas.

gracias.
  #4 (permalink)  
Antiguo 22/07/2009, 10:39
Avatar de gildus  
Fecha de Ingreso: agosto-2003
Mensajes: 1.495
Antigüedad: 20 años, 9 meses
Puntos: 105
De acuerdo Respuesta: Que funcion utilizar para contar registros

Holas,

La consulta que te deje te debe de mostrar:

Código PHP:
SELECT asignacion.areaasignacion.telefono,
MAX(gestiones.telefono) AS num_tel,
gestiones.descripcion,
cat_usuarios.nombreCOUNT(cat_usuarios.id) AS cant 
FROM 
((gestiones
INNER JOIN cat_usuarios ON cat_usuarios
.id_usuario gestiones.id_usuario)
INNER JOIN asignacion ON asignacion.telefono gestiones.telefonoGROUP BY nombretelefono ORDER BY nombre LIMIT 50 

Las siguientes columnas: area, telefono, num_tel, descripcion, nombre, cant
No entiendo porque me dices que te muestra:


Cita:
telefono-------nombre
555-55--------fulanita A
444-44--------fulanita B
526-52--------fulanita C

Saludos
Gildus
__________________
.: Gildus :.
  #5 (permalink)  
Antiguo 22/07/2009, 13:13
 
Fecha de Ingreso: junio-2009
Mensajes: 18
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: Que funcion utilizar para contar registros

si estas en lo correcto, el codigo que me pusiste si esta correcto y ya hace lo que quiero, el problema estaba en la base de datos yo tenia el campo nombre como nombre_completo y es nombre, bueno yo de esto apenas me entere ya que yo no administro la BD yo solo puedo hacer consultas al server y luego hacen modificaiones de las cuales yo no estaba enterado.

pero muchas gracias .: Gildus :. realmente asi era la consulta, gracias
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:23.