Tradebit Service schrieb: > da Du ein "where a.Day=b.Day" machst und darueber hinaus > noch ein count(*) und ein group, ist es klar, dass Du nur > subsets erhaelst.
Genau davor hatte Dirk mich ja gewarnt. Bei den ganz großen Abfragen, wo die Zahlen in die hunderttausende war das kein Problem, aber wir gehen hier mittlerweile so ins Detail, daß es eben doch vorkommen kann, daß eine Seite Null ist. (Es geht um eine Datenbank, wo für alle User gespeichert ist, welche Mails an den jeweiligen User als Spam bewertet wurden und welche nicht. Im Moment sind das mal eben 12 Millionen Datensätze.) > wenn ich das richtig interpretiere, dann vielleicht so: > > SELECT Day, Accepted, Rejected from > > ((select date(datetime) as Day, count(*) as Accepted, 0 as Rejected > from mails where accepted=1 group by Day) > UNION > > select date(datetime) as Day, 0 as Accepted, count(*) as Rejected > from mails where accepted=0 group by Day)) > > ... > > Aber ich weiss nicht, ob das UNION (welches 2 selects aneinander haengt) > das erlaubt! Schnell ist es auf keinen Fall :-) select dummy.* from ( select date(datetime) as Day, count(*) as Accepted, 0 as Rejected from mails where username='$1' and accepted=1 group by Day union select date(datetime) as Day, 0 as Accepted, count(*) as Rejected from mails where username='$1' and accepted=0 group by Day ) as dummy order by Day desc limit 1,14; Da passiert genau das, was ich nicht will, nämlich zwei Zeilen pro Tag. Je eine pro Select, und das per UNION aneinandergehängt. Sieht man auch sehr schön, wenn man am Ende das ORDER mal wegläßt. +------------+----------+----------+ | Day | Accepted | Rejected | +------------+----------+----------+ | 2006-11-27 | 0 | 9 | | 2006-11-26 | 7 | 0 | | 2006-11-26 | 0 | 81 | | 2006-11-25 | 0 | 78 | | 2006-11-25 | 27 | 0 | | 2006-11-24 | 0 | 64 | | 2006-11-24 | 15 | 0 | | 2006-11-23 | 23 | 0 | | 2006-11-23 | 0 | 66 | | 2006-11-22 | 20 | 0 | | 2006-11-22 | 0 | 68 | | 2006-11-21 | 16 | 0 | | 2006-11-21 | 0 | 191 | | 2006-11-20 | 32 | 0 | +------------+----------+----------+ Jetzt muß ich das nur noch irgendwie tageweise zusammenbringen... Okay, das ließe sich auch per Perl-Script erledigen, aber der sportliche Ehrgeiz ist dann ja doch irgendwie vorhanden.... ;-) -martin -- Schmitt Systemberatung Linux/UNIX Giessener Str. 18 Internet/Intranet 35415 Pohlheim/Germany E-Mail Infrastructure http://www.scsy.de Antispam/Antivirus
signature.asc
Description: OpenPGP digital signature
-- ---------------------------------------------------------------------------- PUG - Penguin User Group Wiesbaden - http://www.pug.org