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

Duda con una select con count

Estas en el tema de Duda con una select con count en el foro de Mysql en Foros del Web. Buenas a todos. He estado probando y necesito sacarde mi bd 3 datos. Se supone que tendria 3 tablas, serian empresas, usuarios e inmuebles, y ...
  #1 (permalink)  
Antiguo 21/02/2011, 04:13
 
Fecha de Ingreso: mayo-2008
Mensajes: 228
Antigüedad: 15 años, 10 meses
Puntos: 2
Duda con una select con count

Buenas a todos.

He estado probando y necesito sacarde mi bd 3 datos. Se supone que tendria 3 tablas, serian empresas, usuarios e inmuebles, y se relacionan de la siguiente manera, de empresas a usuarios tendriamos e.Id_empresa = u.codigo_empresa y de usuarios a inmuebles serian u.codigo_empresa = i.cod_empresa.

De momento hago la primera select pero me falta decirle que me cuente el nº de registros con algun count() del cod_empresa, sobe todo porque ese count lo usare mas tarde para hacer que si es mayor de 20 que no permita realizar mas insercciones, etc...

Yo lo haria asi... pero no se como poner el count de inmuebles

select count(id_usuario), id_usuarios, e.Id_empresa from empresas e, usuarios u
where e.Id_empresa = u.codigo_empresa and usuario='usuadmin'
and muestrame el nº de registros del count.

De momento me he atrevido a hacerlo asi, aunque no se si lo esta haciendo bien o mal.

select count(i.cod_empresa), id_usuarios, e.Id_empresa from empresas e, usuarios u, inmuebles i
where e.Id_empresa = u.codigo_empresa and u.codigo_empresa = i.cod_empresa
and u.usuario='usuadmin'

Última edición por arts; 21/02/2011 a las 04:24
  #2 (permalink)  
Antiguo 21/02/2011, 05:47
Avatar de Heimish2000  
Fecha de Ingreso: enero-2011
Ubicación: Madrid
Mensajes: 844
Antigüedad: 13 años, 2 meses
Puntos: 89
Respuesta: Duda con una select con count

Esa relacion de usuarios a inmuebles realmente relaciona empresas e inmuebles porque, supongo, codigo_empresa no es PK de usuarios, ¿no?

Para hacer el count y que no te salga un uno en toda la columna, debes hacer un group by de los campos que quieres contar, que son los que tienes que poner en la SELECT antes del count.

Si quieres contar los inmuebles que tienen los distintos codigos de empresa es tan facil como

Código SQL:
Ver original
  1. SELECT cod_empresa, COUNT(*)
  2. FROM inmuebles
  3. GROUP BY cod_empresa

Etiquetas: count, select
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 15:55.