phpbar.de logo

Mailinglisten-Archive

Antwort: AW: Antwort: Re: Ausgegebene Zeilen zählen lassen?
Archiv Mailingliste mysql-de

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Antwort: AW: Antwort: Re: Ausgegebene Zeilen zählen lassen?





Wie gesagt, sorry für das verunfallte Quoting - ich würde es echt gerne anders
machen, doch das kostet sehr viel Arbeit!  Soll ich dann lieber gar nichts
quoten?  Auch blöd, vor allem da dank Notes das Threading nicht funktioniert :((

| Äh, welche Zeile von den vielen, die durch das group by zusammengefasst
| werden,
| hättest du denn dann gern als Zeilenwert ?

Nun, gar keine *G*  Mich interessiert nur das Ergebnis der Avg() Funktion - die
einzelnen Zeilen sind mir echt egal :]  Das was ich suche steht ja nur indirekt
in der Tabelle - indirekt in so fern, als das ich den Wert erst durch das
zusammenfassen von mehreren Zeilen rausfinden kann.

Nehmen wir an, es gäbe folgende Werte in der Tabelle


ID   User Vote
1    1    3
2    2    1
3    1    2
4    1    -3
5    4    -2
6    3    0

Und nehmen wir weiter an, ich hätte folgendes Select Statement mit diesen Werten
in der Ausgabe:

SELECT Avg(Vote) as Stimme, User from Tabelle ORDER BY Stimme DESC GROUP BY User

Dies gibt mir dann ca. dies aus:

Stimme    User
1    2
0.66 1
0    3
-2   4

Mein Problem ist nun, das ich für User='1' wissen möchte, in der wievielten
Zeile er steht.  Dies ist deshalb interessant, da ich festgelegt habe, das man
um so besser ist, desto mehr Punkte man hat.  User 2 hat die meisten Punkte
(Spalte  "Stimme") und steht somit an der Spitze, bzw. an 1. Stelle, bzw. in
Zeile 1 (was alles das gleiche ist, nur in anderen Beschreibungen).
Wo aber steht User '1'?  Er steht in Zeile 2, somit hat er also den 2. Platz
erreicht.

Für 4 User wie ich es hier gezeigt habe ist es wahrscheinlich echt performanter,
wenn ich durch die Zeilen durchloope - wie aber sieht's bei 1000 oder gar 10000
aus wenn ich auch noch ausgerechnet nach dem User such, der in der letzten Zeile
steht?  Dann muß ich 1000 oder 10000 durchläufe machen - und soweit ich weiß
sind loops nicht so direkt die Stärke von PHP, oder?

Darum möchte ich das ganze halt direkt in MySQL machen.  Wie bereits angedeutet
bin ich auch bereit dafür eine temporäre Tabelle anzulegen - geht das schnell?

Versteht Ihr was ich will? *G*





Gloss Mathias <Mathias.Gloss_(at)_start.de> on 30.01.2001 14:16:35

Bitte antworten an mysql-de_(at)_lists.4t2.com

An:   "'mysql-de_(at)_lists.4t2.com'" <mysql-de_(at)_lists.4t2.com>
Kopie:     (Blindkopie: Alexander Skwar/de/delphiauto)
Thema:    AW: Antwort: Re: Ausgegebene Zeilen zählen lassen?



Hi du oben-quoter ;-)  (http://learn.to/quote)

> ----------
> Von:    alexander.skwar_(at)_delphiauto.com[SMTP:alexander.skwar_(at)_delphiauto.com]
>
> Okay, ich sehe, ich hätte doch direkt alles schreiben sollen *G*
>
> Ja, aber die Zeilen stammen nicht direkt aus einer Tabelle, sondern sind
> zusammengefasst.
> In echt sieht das Query etwa so aus:
>
> SELECT Avg(Vote) as Stimme, Name From Bewertung ORDER BY Stimme GROUP BY
> Name
>
> Da ich "GROUP BY" verwende, kann ich nicht auf einen Wert aus einer Zeile
> zugreifen, da ich ja halt mehrere Zeilen zu einer zusammengefasst habe.
> Und da dies eben nicht geht, suche ich eine Möglichkeit, durch die ich
> *DIREKT*
> die *aktuelle* Zeilennummer mit ausgegeben bekomme.  Für das was ich suche
> hilft
> mir also keine AutoIncrementing Spalte.
> Hmm, wie kann ich die Werte, die ich von einem SELECT zurückbekomme in
> eine
> andere Tabelle einfügen?
> Ich überlege gerade, das ich evtl. dafür eine temporäre ISAM Tabelle
> erzeuge,
> die dann halt eine Auto Incrementing Spalte enthält.
> Aber wie bekomme ich die Wert aus dem Select in die neue Tabelle?
>
Äh, welche Zeile von den vielen, die durch das group by zusammengefasst
werden,
hättest du denn dann gern als Zeilenwert ?

So ganz hab ich das Problem noch nicht erfasst *grübel*

Viele Grüße, Mathias


---
*** Weitere Infos zur Mailingliste und MySQL unter http://www.4t2.com/mysql







---
*** Weitere Infos zur Mailingliste und MySQL unter http://www.4t2.com/mysql 


Home | Main Index | Thread Index

php::bar PHP Wiki   -   Listenarchive