abfrage dauert relativ lange

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

  • abfrage dauert relativ lange

    hiho leute!

    Warum dauert diese abfrage für ein forum so lange?

    PHP-Code:
    $sql "SELECT b1.thread, b1.parent, b1.datum
    FROM forum b1
    LEFT JOIN forum b2 ON b1.thread = b2.thread AND b1.parent < b2.parent
    WHERE b2.parent IS NULL
    ORDER by datum DESC
    LIMIT 
    $anzahl1 , $anzahl2"
    dabei ist es egal wieviele threads ich habe, die geschwindigkeit wird nicht minder, jedenfalls nicht spürbar......
    hab ich hingegen ein paar threads mit vielen parents (antworten), dann braucht die abfrage 2-3 sekunden!!


    Woran liegt das?
    Vielleicht an den indexen, aber ich hab schon probiert die umzustellen, bleibt einfach immer gleich


    wäre nett, wenn ihr mir helfen könntet

  • #2
    Indizies?

    Poste doch mal bitte die Ausgabe von

    EXPLAIN SELECT b1.thread, b1.parent, b1.datum ...
    TBT

    Die zwei wichtigsten Regeln für eine berufliche Karriere:
    1. Verrate niemals alles was du weißt!


    PHP 2 AllPatrizier II Browsergame

    Kommentar


    • #3
      irgendwas ist da faul....



      hilft dir das?

      Kommentar


      • #4
        du solltest sehen, das Ganze anders zu machen.
        Dieses IS NULL gefällt der DB nicht wirklich.
        TBT

        Die zwei wichtigsten Regeln für eine berufliche Karriere:
        1. Verrate niemals alles was du weißt!


        PHP 2 AllPatrizier II Browsergame

        Kommentar


        • #5
          bist du sicher, dass es daran liegt?

          wie würdest du das machen?

          Kommentar


          • #6
            wäre nett, wenn mir jemand einen tipp geben könnte....

            Kommentar


            • #7
              dazu muß man wissen, wie dein DB aussieht, und was die Abfrage bezwcken soll
              TBT

              Die zwei wichtigsten Regeln für eine berufliche Karriere:
              1. Verrate niemals alles was du weißt!


              PHP 2 AllPatrizier II Browsergame

              Kommentar


              • #8
                das ist ein selbstgecodetes forum, das folgende tabelle hat:

                thread | parent | thema | autor | email | reply | datum | text

                ich will also, dass sql nur jeweils die threadnummer von der neusten antwort ausspuckt also der höchste parent der threadnummer

                Kommentar


                • #9
                  ich stör ja ungern, aber...

                  Kommentar


                  • #10
                    Original geschrieben von snake4ever
                    ich stör ja ungern, aber...
                    Nicht drängeln. Die Leute sitzen nicht 24 Stunden am Tag hier. Ein bisschen warten hat noch keinem geschadet.

                    Kommentar


                    • #11
                      Mir verschließt sich ehrlich gesagt im Moment der Sinn von :

                      b1.parent < b2.parent
                      WHERE b2.parent IS NULL
                      carpe noctem

                      [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
                      [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

                      Kommentar


                      • #12
                        mysql 3.x würgaround um z. b. die namen aller foren und den jeweils neusten beitrag dazu anzuzeigen

                        stammt wahrscheinlich indirekt von mir (http://php-resource.de/forum/showthr...748#post206748), wobei ich nie behauptet hab, das wäre performant...
                        Ich denke, also bin ich. - Einige sind trotzdem...

                        Kommentar

                        Lädt...
                        X