I am running a stats page for our Genome@Home team, and I'm trying to get a
simple SELECT that will get the data that I need...

Ok, I have a table setup like this:

Genomestats
-----------------------------------
username                varchar(255)
curDate         datetime
wucount         bigint
genecount               bigint
updates         int
rank                    int
teamnumber              bigint




A sample record from the table may look like this:

|DP       | 2001-08-24 16:00:00 |   25786 |      1588 |       1 |   24 |
983928120|

My SELECT looks like this (note that the dates are dynamically generated):

SELECT * FROM genomestats WHERE curDate IN ('$curDate', '$lastUpdate',
'$lastDay') order by wucount desc, rank desc;

Where $curDate is the most recent data update, $lastUpdate is the update
from 3 hours ago, and $lastDay is the update from 24 hours ago.  When I
execute the SQL, and print the resulting recordset to my log file, I get
data like this:

junior || 2001-09-14 06:30:00 || 51819 || 3019 || 156 || 11 || 983928120
junior || 2001-09-14 03:30:00 || 51743 || 3014 || 155 || 11 || 983928120
junior || 2001-09-13 06:30:00 || 51480 || 2997 || 149 || 11 || 983928120
IronBits || 2001-09-14 06:30:00 || 50787 || 3021 || 156 || 12 || 983928120
IronBits || 2001-09-14 03:30:00 || 50712 || 3016 || 155 || 12 || 983928120
Zoso || 2001-09-14 06:30:00 || 50549 || 2917 || 156 || 13 || 983928120 Zoso
|| 2001-09-14 03:30:00 || 50505 || 2914 || 155 || 13 || 983928120 Zoso ||
2001-09-13 06:30:00 || 50188 || 2893 || 149 || 12 || 983928120 IronBits ||
2001-09-13 06:30:00 || 50181 || 2982 || 149 || 13 || 983928120

Now, the problem is that the user IronBits had a wucount at somepoint (in
the last 24 hours here) that was less than Zoso's wucount.  Basically, this
means that IronBits passed Zoso sometime in the past 24 hours.  I need to
have all of the data grouped by the username, but if I add in group by
username, then I only get one set of records, not 3, as shown above.  Here
is what I want:

junior || 2001-09-14 06:30:00 || 51819 || 3019 || 156 || 11 || 983928120
junior || 2001-09-14 03:30:00 || 51743 || 3014 || 155 || 11 || 983928120
junior || 2001-09-13 06:30:00 || 51480 || 2997 || 149 || 11 || 983928120
IronBits || 2001-09-14 06:30:00 || 50787 || 3021 || 156 || 12 || 983928120
IronBits || 2001-09-14 03:30:00 || 50712 || 3016 || 155 || 12 || 983928120
IronBits || 2001-09-13 06:30:00 || 50181 || 2982 || 149 || 13 || 983928120
Zoso || 2001-09-14 06:30:00 || 50549 || 2917 || 156 || 13 || 983928120 Zoso
|| 2001-09-14 03:30:00 || 50505 || 2914 || 155 || 13 || 983928120 Zoso ||
2001-09-13 06:30:00 || 50188 || 2893 || 149 || 12 || 983928120


But I can't think of a good, simple way to do this.  Anyone have any ideas?

-------------------------

Glendon Solsberry
Internet Programmer
Tricon Global Restaurants
tel. (502) 874-6736
fax (502) 874-8818


---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to