Ergebniss zählen trotz LIMIT ??
Norman
- datenbank
0 Matthias Jütte0 Ilja
Hi,
ich habe eine Abfrage deren mengenmäßiges Ergebnis ich gerne wüßte. Leider macht mir dabei das LIMIT ein Problem:
$sql = "select * from table where blablabla order by '$sortiert_nach' LIMIT $limit1, $limit";
Diese Abfrage muß so sein, weil ich das Ergebnis seitenweise ausgeben lasse. Dann baer bekomme ich über
$Anzahl_rows = mysql_num_rows($result); nur die Ergebnisse bis zum Limit gezählt.
Ich habe mir nun mit einer 2. Abfrage beholfen:
$sql_menge = "select * from table where blablabla";
...
$Anzahl_rows = mysql_num_rows($result_menge);
Geht das nicht etwas effizienter, als so??
Grüße, Norman
Hallo Norman!
Das hier könnte dir helfen: http://dev.mysql.com/doc/mysql/de/Counting_rows.html
Gruß
Matthias
yo,
Das hier könnte dir helfen: http://dev.mysql.com/doc/mysql/de/Counting_rows.html
ich bezweifel mal, dass ihm das weiter helfen wird. schließlich will er ja nicht gruppieren, was er aber muss, um neben einer aggregat-funktion auch "normale" daten zu bekommen. ich denke mal, in dem falle sind zwei abfragen der beste weg. nicht alles, was man auch mit einer machen kann muss automatisch auch besser sein.
Ilja
Hallo Norman!
Das hier könnte dir helfen: http://dev.mysql.com/doc/mysql/de/Counting_rows.html
Gruß
Matthias
Hm, auch schon dran gedacht. Aber da mysql ja dafür genau die gleichen Vergleichsoperationen in den unzähligen where-clauseln durchführen muß, frag ich mich, ob das wirklich effektiver ist, als meine Behelfslösung...
Grüße
Norman
yo,
Geht das nicht etwas effizienter, als so??
mach die zweite abfrage beim ersten aufruf der seite und übergebe die anzahl beim blättern immer mit. dann brauchst du die abfrage nach der gesamtanzahl nur einmal machen.
Ilja