Pequeño problema con ejercicio de sql
Mostrando resultados del 1 al 5 de 5
  1. #1
    Buenas tardes Betas!
    Estoy estudiando base de datos, pero aún soy muy novato

    Tengo un problema en el siguiente ejercicio:
    Muestra el resultado más repetido del P.E. Valencia. Adjunto la base de datos *BD LIGA.rar

    Lo que he logrado hacer es esto:
    SELECT a.resultado FROM partido a GROUP BY a.resultado HAVING COUNT(a.resultado)=(SELECT MAX(c.total) FROM (SELECT COUNT(b.resultado) as total FROM partido b GROUP BY b.resultado)c);

    y me dice el resultado más repetido pero no se como especificar que sea el resultado mas repetido de P.E. Valencia.
    Alguien me podría ayudar?
    Gracias!!!!
    Última edición por josedvd123; 05-may-2014 a las 06:59

  2. #2
    Creo que te faltaria meter un WHERE a.equipo = 'P.E. Valencia' para dejar solo los resultados de ese equipo.

    P.D: Tienes un lio de sentencia en SQL, intenta ser más claro en sentencias de ese tipo.... Te faltan parentesis para que se aclare mas....

    SELECT a.resultado FROM partido a GROUP BY a.resultado HAVING COUNT(a.resultado)=((SELECT MAX(c.total) FROM (SELECT COUNT(b.resultado) as total FROM partido b GROUP BY b.resultado)) WHERE a.equipo = 'P.E. Valencia'

    Asi esta mejor
    Última edición por SrSagek; 05-may-2014 a las 09:55

  3. #3
    Cita Iniciado por SrSagek Ver Mensaje
    Creo que te faltaria meter un WHERE a.equipo = 'P.E. Valencia' para dejar solo los resultados de ese equipo.

    P.D: Tienes un lio de sentencia en SQL, intenta ser más claro en sentencias de ese tipo.... Te faltan parentesis para que se aclare mas....

    SELECT a.resultado FROM partido a GROUP BY a.resultado HAVING COUNT(a.resultado)=((SELECT MAX(c.total) FROM (SELECT COUNT(b.resultado) as total FROM partido b GROUP BY b.resultado)) WHERE a.equipo = 'P.E. Valencia'

    Asi esta mejor
    Te falto poner una "c"

    Pero igualmente con el código así:
    SELECT a.resultado FROM partido a GROUP BY a.resultado HAVING COUNT(a.resultado)=((SELECT MAX(c.total) FROM (SELECT COUNT(b.resultado) as total FROM partido b GROUP BY b.resultado)c) WHERE a.equipo = 'P.E. Valencia';
    la columna equipo solo muestra números, los nombres de los equipos están en otra tabla.

    Pero gracias por intentar ayudarme

    ---------- Post agregado el 05-may-2014 hora: 19:02 ----------

    Después de todo el día mirando ese ejercicio lo he resuelto:

    SELECT a.resultado FROM partido a WHERE a.local =(SELECT id_equipo FROM equipo WHERE nombre='P.E. Valenacia') GROUP BY a.resultado HAVING COUNT(a.resultado)=(SELECT MAX(c.total) FROM (SELECT COUNT(b.resultado) as total FROM partido b GROUP BY b.resultado)c);


  4. #4
    Muy bien hecho. Claro, lo has hecho genial, si los nombres de los equipos estan en otra tabla, pues a combinar tablas como lo has hecho, o haciendo joins.

    Enhorabuena!! Así se aprende!!

  5. #5
    Si tienes dificultad o dudas con las uniones en SQL, puedes utilizar esta chuleta

    http://www.danielschurter.net/mainsi.../sqljoins2.png

    Un Saludo

Temas similares

  1. Problema con ejercicio JAVA :(
    No logro realizar este ejercicio: Algoritmo que pida números hasta que uno sea 0. En cada iteración (des de la segunda) debe imprimir la suma de...
    Respuestas: 4
    Último mensaje: 02-ene-2014
  2. Pequeño problema...
    http://h.imagehost.org/0825/vbhispano.jpg Como podemos observar, al poner el puntero sobre 1 en 2 indica: web.com/foros/ En mi foro no sale así,...
    Respuestas: 2
    Último mensaje: 08-ago-2009
  3. Un pequeño problema con vB 3.8.3
    Me siento algo noob posteando esto ya que he visto muuuuchos temas sobre este problema pero aún asi ninguno me sirvió. Si, estoy hablando del...
    Respuestas: 7
    Último mensaje: 26-jul-2009

Normas de publicación

  • No puedes crear nuevos temas
  • No puedes responder mensajes
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •