phpbar.de logo

Mailinglisten-Archive

[php] Re: [php/mysql] Harte Nuss - Aggregatfunktionen

[php] Re: [php/mysql] Harte Nuss - Aggregatfunktionen

Jan Peuker jan.peuker at lst-deutschland.de
Fre Jun 17 14:58:40 CEST 2005


Hallo Michael,

>
> @raffael: "SELECT * FROM i-was WHERE id = 27840" - Meine Tabelle hat keine
> ID. Aufgrund der Datenmengen habe ich mir den dafür nötigen Speicherplatz
> erspart. Ansonsten wäre es auch nicht das, was ich brauche.

Also eine ID sollte eigentlich keinen Platz brauchen. Wie oft wird die
Tabelle den geändert? Ist es ein Datenstamm der nur 1x am Tag ne beschrieben
wird oder findet ständig Änderung statt? In ersterem Fall könntest Du die
Tabelle vorsortieren mit der Reihenfolgen-ID als Primary Key. Dann könnntest
Du dir auch beliebige "Nachbarn" anzeigen lassen.
Sind die Nachbarn immer in einem "gewissen" Abstand zueinadern? Also kann
man mit Sicherheit sagen dass bei einer Abweichung von 10 der Vorder- und
Hintermann mit vorkommen? Was heißt denn "große" Datensätze? Sind da 100.000
BLOBS mit drin?

>
> @sebastian: "wie wärs mit zwei Querys?" - Wo liegt dann der Mehrwert?
>
> @christoph: Meine Tabelle ist schon geindext, :-)

s.o. ist der Index der Wert nachdem Du suchen willst?

> @nochmal sebastian: "ich dachte du wolltest vom Ergebnis der
> Aggregat-Funktion das 4." -- Falls das geht, ist es genau das, was ich
> suche. Aber die Funktion MAX oder AVG geben doch nur einen Wert zurück
> oder täusche ich mich? Kann ich damit auch das zweite Maximum auslesen?
>

Genau, die geben nur einen Wert zurück der sogar gecached sein kein.
Übrigens glaube ich nicht, dass Excel bei 100.000 Datensätzen der Größe noch
sinnvoll sortiert (selbst wenn es so viele Zeilen darstellen könnte ;) ).
Wenn Du wirklich die Performance brauchst aber auf SQL verzichten kannst und
die Daten nur selber updatest könntest Du dir einen "Index" auch selber
bauen - einfach als Array o.ä..

ein Gedanke nur mal so,

jan


php::bar PHP Wiki   -   Listenarchive