Lo que quiero hacer es contar el número de filas devueltas por una subconsulta, en esencia, los siguientes:

select pp.prop_id, COUNT((select employee_id from employee e where e.ao1_hours > 0))
  from proposal_piece pp

  group by pp.prop_id
  order by pp.prop_id

Aquí está mi mensaje de error:

Cannot perform an aggregate function on an expression containing an aggregate or a subquery.

¿Por qué esto no funciona? Si selecciona sólo se devuelve un montón de employee_id's con un criterio de filtrado por qué no puedo contar el número de filas o employee_id's que se va a devolver?

Estoy buscando para contar el número de los distintos empleados que han ao1_hours > 0. Agrupados por el prop.

Aquí hay alguna información estructural acerca de mi base de datos, como parte de una consulta.

    from proposal_piece pp
    INNER JOIN employee e
    on pp.employee_id = e.employee_id

Gracias!

  • ¿Cuál es el resultado
  • El resultado mostrará cada prop_id tener el mismo número de empleados. Es esto lo que estabas buscando?
  • No, yo estoy mirando para contar el número de los distintos empleados que han ao1_hours > 0. Agrupados por la prop.
  • puede usted dar un datasample de el resultado que usted espera?
  • Acabo de editar mi post explicando lo que quiero.
  • Usted debe unirse a los empleados y proposal_piece tabla. Cómo estas tablas están relacionadas?
  • Es allí cualquier columna que hace referencia a la prop_id en la tabla empleados?

1 Comentario

  1. 5

    Probar este

    select pp.prop_id, 
          (select COUNT(employee_id) 
           from employee e 
           where e.ao1_hours > 0 and e.employee_id = pp.employee_id) as nb_employees
    from proposal_piece pp      
    order by pp.prop_id   

    o este

    select pp.prop_id, count(e.employee_id) as nb_employees  
    from proposal_piece pp inner join employee e 
         on pp.employee_id = e.employee_id
    where e.ao1_hours > 0
    group by pp.prop_id
    order by pp.prop_id
    • He estado ninja había
    • ¿a qué te refieres?
    • Yo estaba escribiendo el eaxct misma cosa
    • Me olvidé de que usted podría utilizar las cláusulas where con el/antes de agrupar por…. jaja

Dejar respuesta

Please enter your comment!
Please enter your name here