SQL - Obtener datos máximos

   
Vista:

Obtener datos máximos

Publicado por paciencia (2 intervenciones) el 16/11/2008 21:32:38
Hola tod@s:

Acabo de encontrar este foro y aunque he visto consultas similares, no consigo seguir adelante con un ejercicio, así que os solicito un poco de ayuda.

Tengo una base de datos con dos tablas:
Tabla 1 - Pisos: codigo_piso (clave principal) y código_postal
Tabla 2 - Ventas: codigo_piso (clave)

La base de datos refleja las ventas de los pisos y necesito mostrar los código postales donde se han vendido más pisos.

Si hago:
SELECT pi.codi_postal_pis, count (*) AS venuts
FROM pisos pi, vendes v
WHERE pi.codi_pis = v.codi_pis
GROUP BY pi.codi_postal_pis
ORDER BY venuts DESC;

Muestro todos los códigos postales ordenados de mayor a menos por el número de ventas que se han efectuado. El resultado es:
08033 3
08120 3
17130 2
08018 1
08200 1

Lo que nesitaría es sólo mostrar os códigos postales de más ventas, osea:
08033
08120

Creo que se debería usar la función MAX, pero no sé como usar esta función de una cuenta.

¿Alguna idea? ¿Alguna recomendación? Os estaría muy agradecida.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Obtener datos máximos

Publicado por Angeles (12 intervenciones) el 19/11/2008 12:42:14
Prueba a hacer otra consulta basada en la que tienes y que te calcule el máximo de "venuts".

Saludos, Angeles
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Obtener datos máximos

Publicado por paciencia (2 intervenciones) el 19/11/2008 19:57:24
Pues muchas gracias por la respuesta pero me he quedado igual....

Precisamente eso es lo que llevo buscando y no consigo hacer, una consulta que calcule el máximo.

Si alguien más me puede echar una mano le estaría tremendamente agradecida.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Obtener datos máximos

Publicado por m (16 intervenciones) el 19/11/2008 22:39:36
Mira lo que Angeles quiso decir es crear una funcion como la siguiente:

SELECT pi.codi_postal_pis, count (*) AS venuts
FROM pisos pi, vendes v
GROUP BY pi.codi_postal_pis
Having count(*)=
(SELECT MAX(venuts)( SELECT pi.codi_postal_pis, count (*) AS venuts
FROM pisos pi, vendes v
WHERE pi.codi_pis = v.codi_pis
GROUP BY pi.codi_postal_pis
ORDER BY venuts DESC) as T)

Mira es lo unico que se me ocurre por ahora aunque la verdad no me gusta
porque suena muy rebuscada la respuesta, pero
trate de usar tu consulta inicial.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar