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

[SOLUCIONADO] Problemas con la función COUNT

Estas en el tema de Problemas con la función COUNT en el foro de Mysql en Foros del Web. Hola, bueno pues tengo que hacer una consulta en la que me piden reportar el número total de empleados que están ubicados en un nivel ...
  #1 (permalink)  
Antiguo 24/03/2016, 02:36
 
Fecha de Ingreso: febrero-2016
Mensajes: 4
Antigüedad: 8 años, 2 meses
Puntos: 0
Pregunta Problemas con la función COUNT

Hola, bueno pues tengo que hacer una consulta en la que me piden reportar el número total de empleados que están ubicados en un nivel de salario conforme al ingreso mensual, las tablas son las siguientes:
La primera es la tabla emp, donde se encuentra la columna sal.
sal
800.00
1600.00
1250.00
2975.00
1250.00
2850.00
2450.00
3000.00
5000.00
1500.00
1100.00
950.00
3000.00
1300.00
La segunda es la tabla salgrade que contiene las siguientes columnas.
grade losal hisal
1 700.00 1200.00
2 1201.00 1400.00
3 1401.00 2000.00
4 2001.00 3000.00
5 3001.00 9999.00
Traté de hacerlo con la función COUNT y pienso que con esa se debe de hacer, pero no sé cómo decirle que me cuente los empleados de cada grado de salario diferente. Utilicé ésta consulta:

Código SQL:
Ver original
  1. SELECT COUNT(DISTINCT grade), grade FROM salgrade,emp
  2. WHERE (sal BETWEEN losal AND hisal);

Pero me da el resultado que son cinco grados de salario diferentes y no cuantos empleados hay en cada grado, esa consulta me da éste resultado:

count(distinct grade) grade
5 1

Pienso que se ha de utilizar de una manea diferente pero realmente no se me ocurre cómo, espero que me puedan ayudar, gracias. :)

Última edición por gnzsoloyo; 24/03/2016 a las 06:31
  #2 (permalink)  
Antiguo 24/03/2016, 06:27
 
Fecha de Ingreso: junio-2011
Mensajes: 289
Antigüedad: 12 años, 10 meses
Puntos: 15
Respuesta: Problemas con la función COUNT

Puedes usar un CASE
  #3 (permalink)  
Antiguo 24/03/2016, 06:39
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Problemas con la función COUNT

Cita:
Pero me da el resultado que son cinco grados de salario diferentes y no cuantos empleados hay en cada grado,
La consulta funciona bien, te da exactamente lo que pides: cuantos grados diferentes hay.
cuantos empleados hay en los diferentes grados, porque no estás consultando cuandos empleados hay, agrupados por cada grado...

Tu consulta es una query extremadamente básica. Puedes encontrar un ejemplo en cualquier tutorial:
Código SQL:
Ver original
  1. SELECT grade, COUNT(1) empleados
  2. FROM salgrade, emp
  3. WHERE sal BETWEEN losal AND hisal
  4. GROUP BY grade;

Obviamente esto es un ejercicio tomado de alguna parte, porque ese modelo de datos es un espanto de mal diseñado.

Posdata: En CASE era totalmente innecesario.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #4 (permalink)  
Antiguo 24/03/2016, 11:57
 
Fecha de Ingreso: febrero-2016
Mensajes: 4
Antigüedad: 8 años, 2 meses
Puntos: 0
Respuesta: Problemas con la función COUNT

Muchas gracias gnzsoloyo, sé que te pueda parecer muy básico, pero no tiene mucho que manejo éste manejador de bases de datos, así que se me complica un poco.
Nuevamente gracias por tu ayuda!!

Etiquetas: count, select, tabla
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 09:48.