Kalle: Performance bei Datenbankabfrage

Guten Morgen, alle zusammen.

Meine Datenbankabfragen ergeben z.T. so große Mengen, dass ich die Anzeige auf mehrere Seiten aufteilen möchte, sagen wir, pro Seite 15 Treffer. Soweit ganz normal, macht jede Suchmaschine.

Frage zur Performance (wie heißt das auf deutsch: Schnelligkeit ?):

Ist ein SELECT COUNT (*) deutlich schneller als ein SELECT * ?

Wenn ich also erst einen COUNT mache, muss ich auf jeden Fall noch mal lesen, dann aber nur 15 Sätze mit LIMIT. Wenn ich gleich "richtig" lese, erhalte ich eine undefinierte (riesige) Menge, kann aber die ersten 15 Treffer sofort verwenden.

Was meint ihr, wie macht man sowas ?

Gruß aus Worms, Kalle

  1. Also, wenn man sich erst mal mit einem Thema beschäftigt, kommen auch die Ideen.

    Bei den Datensätzen handelt es sich um Veranstaltungstermine. Wenn ich auch mehrere Seiten hätte, macht es gar keinen Sinn, per Link von Seite 1 gezielt auf Seite 5 zu springen.

    Ich denke, ich lese mit LIMIT 16 Sätze. Wenn der 16. tatsächlich vorhanden ist, zeige ich 15 an und mache einen Link auf die Folgeseite. Dort wird dann Satz 16 - 31 gelesen. Ist 31 tatsächlich vorhanden ...

    Performanter geht's wohl nicht, aber ich kann auch die Gesamtmenge nicht anzeigen.

    Gruß, Kalle