Abfrage

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Abfrage

    Moin,

    ich habe ein kleines Problem mit einer SQL-Abfrage. Ich weiß nicht wie ich diese gestalten soll. Es geht um vier Tabellen die Daten über Kartstrecken, Kartrennen, Ergebnisse und Fahrer enthalten.

    user (Hier stehen alle Fahrer)
    ID
    name
    vorname

    karttracks (Hier stehen alle Strecken drin)
    ID
    name

    kartrace (Hier werden alle Rennen und wo diese gefahren wurden gehalten)
    ID
    track_id
    date

    kartresults (Hier werden alle Ergebnisse zu den jeweiligen Rennen gehalten)
    race_id
    driver_id
    position
    besttime

    Ich möchte jetzt eine Abfrage erstellen, die mir zu einer meiner Strecken eine Art Bestenliste ausgibt. Also eine Liste, in der jeder Fahrer mit seiner Bestzeit und dem Datum an dem der Fahrer diese Zeit gefahren ist.

    Kann mir da jemand helfen?

    Vielen Dank und Gruß,
    Paddy
    Kennst Du Hamburg?

  • #2
    Re: Abfrage

    Original geschrieben von paddyhh

    Kann mir da jemand helfen?
    lesen, könnte.

    http://www.php-resource.de/forum/sho...threadid=28292

    Kommentar


    • #3
      Schlecht, mal wieder Sortierung vor Gruppierung ... irgendwo war eine Lösung mit zwei left joins, aber da würd ich dir schon fast eher zu subqueries raten~

      Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

      bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
      Wie man Fragen richtig stellt

      Kommentar


      • #4
        Original geschrieben von ghostgambler
        Schlecht, mal wieder Sortierung vor Gruppierung ...
        Ist das auf meine Datenbank bezogen? Kann man da etwas verbessern?
        Kennst Du Hamburg?

        Kommentar


        • #5
          ich denke eher auf das Problem ansich, wobei ich das im Moment noch nicht nachvollziehen kann.

          Wie siehts nun aus mit eigenen Ansätzen?

          Kommentar


          • #6
            Original geschrieben von TobiaZ
            Wie siehts nun aus mit eigenen Ansätzen?
            Die sind noch auf dem Stand bevor ich dieses Thema eröffnet habe. Aber hier:

            SELECT kr.besttime, kt.name, u.UserFirstname, u.UserLastname
            FROM kartresults AS kr, karttracks AS kt, kartrace AS kra, users AS u
            WHERE kra.track LIKE 1
            AND kr.raceid LIKE kra.id
            AND kr.driver LIKE u.userID
            ORDER BY kr.besttime ASC

            Da kommt aber nur Müll bei raus.
            Kennst Du Hamburg?

            Kommentar


            • #7
              und was glaubs du aus welchem Grund ich dir den o.g. Link gepostet habe???

              Kommentar


              • #8
                Original geschrieben von TobiaZ
                und was glaubs du aus welchem Grund ich dir den o.g. Link gepostet habe???
                Also ich glaube, dass Du mir mit diesen Link helfen wolltest. Da ich allerdings zurzeit nur nebenbei hier rein gucken kann, hatte ich leider noch nicht die Möglichkeit mich intensiv damit auseinander zu setzten. Aber ich glaube auch, dass es rein gar nichts zur Sache tut, was ich glaube. Du hast mich nach meinen eigenen Ansätzen gefragt. Da sind Sie!

                Gruß,
                Paddy
                Kennst Du Hamburg?

                Kommentar


                • #9
                  glauben die newbies, alle, die hier helfen, seien Arbeitslos und hätten deshalb mehr Zeit als man selbst?

                  Kommentar


                  • #10
                    Original geschrieben von pekka
                    glauben die newbies, alle, die hier helfen, seien Arbeitslos und hätten deshalb mehr Zeit als man selbst?
                    Kann ich nicht beurteilen. Ich glaube es zumindest nicht. Sollte ich den Eindruck erweckt haben, dass ich genau das denke, entschuldige ich mich dafür.

                    Gruß,
                    Paddy
                    Kennst Du Hamburg?

                    Kommentar


                    • #11
                      So ich habe es jetzt mit dem folgenden Befehl gemacht:

                      SELECT distinct(users.UserID), users.Userfirstname, users.UserLastname, kartrace.date, MIN (kartresults.besttime)
                      FROM users, karttracks, kartrace, kartresults
                      WHERE karttracks.id = '1' AND karttracks.id = kartrace.track AND kartresults.raceid = kartrace.ID AND kartresults.driver = users.UserID
                      GROUP BY users.UserID
                      ORDER BY MIN(kartresults.besttime)

                      Danke für die tolle Unterszützung!

                      Gruß,
                      Paddy
                      Kennst Du Hamburg?

                      Kommentar

                      Lädt...
                      X