Hallo zusammen,
Ich habe folgendes Problem.
Ich habe eine Tabelle in einer Datenbank mit 180.000 einträgen die jeden Tage mit mit neuen Daten aktualisiert wird. Das sind ca. 16.000 Datensätze(Insert, Update, Delete). Soweit so gut. Jetzt gibt es in der Datenbank eine Spalte "X" die ca. 5000 Einträge hat. Ich möchte jetzt wenn ein Datensatz angezeigt wird je nachdem welchen Wert "X" hat 36 andere Datensätze angezeigt werden. Also wenn X=1 ist sollen die Datensätze 1 bis 36 angezeigt werden, wenn X=2 ist => Datensätze 37 bis 72 usw.
Im Moment organisiere ich das mit einer Spalte Zähler, die die Datensätze durchnummeriert. Leider dauert das Update dier Spalte (da diese ja nach dem täglichen Einspielen der 16.000 Datensätze nicht mehr paßt) ca. 30 Minunten, 180.000 mal Update.....
Mit select ..... where..... LIMIT(...,36) habe ich es auch schon ausprobiert, da geht die Datenbank aber in die Knie weil zu Spitzenzeiten ca. 300 User anwesend sind.
Weiß jemand eine bessere Lösung???
Und ich hoffe ich habe mich verständlich ausgedrückt, sonst fragt nochmal nach.
Ach ja danke schon einmal.
Ingo
Ich habe folgendes Problem.
Ich habe eine Tabelle in einer Datenbank mit 180.000 einträgen die jeden Tage mit mit neuen Daten aktualisiert wird. Das sind ca. 16.000 Datensätze(Insert, Update, Delete). Soweit so gut. Jetzt gibt es in der Datenbank eine Spalte "X" die ca. 5000 Einträge hat. Ich möchte jetzt wenn ein Datensatz angezeigt wird je nachdem welchen Wert "X" hat 36 andere Datensätze angezeigt werden. Also wenn X=1 ist sollen die Datensätze 1 bis 36 angezeigt werden, wenn X=2 ist => Datensätze 37 bis 72 usw.
Im Moment organisiere ich das mit einer Spalte Zähler, die die Datensätze durchnummeriert. Leider dauert das Update dier Spalte (da diese ja nach dem täglichen Einspielen der 16.000 Datensätze nicht mehr paßt) ca. 30 Minunten, 180.000 mal Update.....
Mit select ..... where..... LIMIT(...,36) habe ich es auch schon ausprobiert, da geht die Datenbank aber in die Knie weil zu Spitzenzeiten ca. 300 User anwesend sind.
Weiß jemand eine bessere Lösung???
Und ich hoffe ich habe mich verständlich ausgedrückt, sonst fragt nochmal nach.
Ach ja danke schon einmal.
Ingo
Kommentar