Einer oder doch zwei Querys?

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

  • #16
    Hast du jetzt auf User_Id etwa einen Primärschlüssel und zusätzlich noch einen normalen Index? Wenn ja, wäre das wieder sinnlos und du solltest den normalen Index löschen, so dass nur noch der Primary Key auf User_Id existiert.
    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
    Super, danke!
    [/COLOR]

    Kommentar


    • #17

      Ja, hatte ich. Aber selbst das entfernen dessen ändert das Resultat nicht (mit Ausnahme "possible_keys" der nun nur noch "PRIMARY" enthält).

      Kommentar


      • #18
        Dann probier mal ein
        Code:
        order by `u`.`User_Id`
        [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
        Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
        Super, danke!
        [/COLOR]

        Kommentar


        • #19
          Dann ist der EXPLAIN korrekt aber das Resultat (die sortierung) falsch.

          Kommentar


          • #20
            Dann änderst du die Sortierung halt wieder. Wie sieht denn die aktuelle Abfrage aus und wonach möchtest du gerne sortieren? Was ist, wenn du an deine Sortierung einfach `u`.`User_Id` anhängst? Also z. B.:

            Code:
            order by
                `was`.`du_willst` desc,
                `u`.`User_Id`
            [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
            Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
            Super, danke!
            [/COLOR]

            Kommentar


            • #21
              Das Anhängen führt auch zum schlechten Resultat. Sortieren möchte ich nach dem "ORDER BY c.MenuBereiche_Name", also nach der Menuüberschrift/titel. Würde vermutlich auch mit einem GROUP BY gehen, stimmts?

              Kommentar


              • #22
                Dann könntest du die Abfrage noch andersherum aufziehen, so dass du mit mxr anfängst und dadurch die Menübereiche weiter oben schon joinst und dich dann in Richtung User vorarbeitest. Alternativ sortierst du einfach nach User_Id, wenn das am performantesten ist und änderst die Reihenfolge dann nach dem Abrufen über PHP mit usort.
                [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                Super, danke!
                [/COLOR]

                Kommentar


                • #23
                  Hallo,


                  Habe nun heute noch verschiedene Varianten durchgetestet, allesamt führten zum selben Resultat - selbst als ich die in ORDER BY genannte Tabelle als erstes gejont habe. Also habe ich einfach mal das ORDER BY weggelassen und schon kam ein wunderschöner EXPLAIN zum vorschein.
                  Dann dachte ich mir, "hilf mit und mach es einfacher....".. Ich fügte also den beiden Menu-Tabellen noch eine Spalte (reihe (int)) hinzu und belegte diese mit dem Index UNIQUE. Ziel dieser Spalte soll eine rein nummerische Sortierung sein, so das nicht nach Textfeldern sortiert werden muss. Pustekuchen...

                  Das "Using filesort" wird also allein von der sortierung hervorgerufen, wie ich finde aber um die komme ich nicht rum - es sei denn ich will es ausserhalb von mysql sortieren.
                  Dazu jetzt einfach mal eine Grundsätzliche Frage: Bremst ein Using filesort derart extrem aus als das es einem in dem Sinne nicht doch 'egal' sein könnte? Zumal grade in diesem Fall eigentlich 'nur' ein Menu dahinter steckt, es also immer überschaubar sein wird.


                  Gruss

                  Kommentar


                  • #24
                    Meine Meinung dazu: kein Menü ist so riesig, dass es derart auffallen würde. Meine andere Meinung kennst du schon: notfalls mit PHP sortieren.
                    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                    Super, danke!
                    [/COLOR]

                    Kommentar


                    • #25
                      Danke für die Hilfe/Ratschläge. Ich werde die Tage mal schauen wie ich das dann im Endeffekt umsetzen werde.

                      Kommentar

                      Lädt...
                      X