obtener el valor/es que más se repiten de un campo
Publicado por angeles (1 intervención) el 21/12/2022 08:28:14
Buenas noches. Estoy empezando en el mundo de la programación en sql, y estoy atascada con una query.
Tengo una tabla parecida a esto (es un ejemplo), llamada VISITAS
GRUPO DURACION_VISITA EDAD
A 4 34
C 15 22
A 9 45
B 11 52
A 2 29
Y necesito sacar:
- nº de visitas
- edad media
- estancia media
- grupo que más visitas ha tenido (en caso de que haya varios con el mismo nº de visitas, mostrará todos)
Se me ha ocurrido algo así:
select count(*) as num_visitas, round(avg(edad)) as edad_media, round(avg(duración_visita)) as estancia_media,
(SELECT grupo, COUNT(grupo) AS total
FROM visitas GROUP BY grupo
ORDER BY total DESC
fetch first 1 rows only)
from visitas
Pero no me funciona. Agradecería alguna ayuda.
Tengo una tabla parecida a esto (es un ejemplo), llamada VISITAS
GRUPO DURACION_VISITA EDAD
A 4 34
C 15 22
A 9 45
B 11 52
A 2 29
Y necesito sacar:
- nº de visitas
- edad media
- estancia media
- grupo que más visitas ha tenido (en caso de que haya varios con el mismo nº de visitas, mostrará todos)
Se me ha ocurrido algo así:
select count(*) as num_visitas, round(avg(edad)) as edad_media, round(avg(duración_visita)) as estancia_media,
(SELECT grupo, COUNT(grupo) AS total
FROM visitas GROUP BY grupo
ORDER BY total DESC
fetch first 1 rows only)
from visitas
Pero no me funciona. Agradecería alguna ayuda.
Valora esta pregunta
0