sql >> Base de Datos >  >> RDS >> Mysql

Contando campos con el mismo valor

Ahora que tiene una vista que envuelve su lógica complicada, puede estructurar una consulta como esta para obtener lo que está buscando:

SELECT vt.*, vtij.nome_count
FROM view_teste vt
    INNER JOIN (SELECT Nome, count(1) as nome_count FROM view_teste
        WHERE [additional_filter_conditions]
            GROUP BY Nome) vtij on vtij.Nome = vt.Nome
WHERE [additional_filter_conditions]

Notas adicionales:(1) Es posible que esto no funcione, pero vale la pena intentarlo, ya que usted no originó esta consulta. Optimizar esta consulta sería una bestia. (2) En su opinión, tiene una cláusula ORDER BY que es un golpe de rendimiento que es innecesario. Debe eliminar eso y hacer el ORDEN POR deseado en su consulta, no dentro de su vista.