phpbar.de logo

Mailinglisten-Archive

[php] sql mit limit oder array

[php] sql mit limit oder array

Norbert Pfeiffer norbert at itbw.de
Fre Jun 29 19:47:33 CEST 2007


Hallo Achim,

bei der Arbeit mit Limit ist der Zeitfaktor sehr hinderlich.
Kein User blaettert alle Resultate durch, aber Bots kennen
keine Gnade, z.B. hatten wir das Stichwort 'Liebe' verlinkt,
und die Bots haben alle dreitausend Treffer in 10-er Schritten
abgefragt. Dabei haben wir festgestellt, dass Limit zwar am
Beginn sehr fix ist, aber bei hoeheren Seiten grausam lahmt.

Aber ich habe einen Ausweg gefunden:
1. Query:  SELECT rowID FROM tabelle WHERE cat = 'Liebe';
   das brachte mir die 3000 IDs, die ich in ein Array steckte
   Die 10 IDs der gesuchten Seite habe ich extrahiert und:
2. Query:  SELECT * FROM tabelle WHERE rowID IN (x, ... z);
   Damit sank die DB-Auslastung auf ertraegliche Werte und
   auch die Antwortzeiten blieben im gruenen Bereich ...


m. b. G.  Norbert
------------------
mobil 0177-1741686
------------------
e.o.m. 



php::bar PHP Wiki   -   Listenarchive