MYSQL - multiple count statments

Posted by darudude on Stack Overflow See other posts from Stack Overflow or by darudude
Published on 2010-06-07T18:23:23Z Indexed on 2010/06/07 18:32 UTC
Read the original article Hit count: 239

Filed under:

I'm trying to do a lookup on our demographioc table to display some stats. However, since out demographic table is quit big I want to do it in one query.

There are 2 fields that are important: sex, last_login

I want to be able to get the total number of logins for various date ranges (<1day ago, 1-7 days ago, 7-30 days ago, etc) GROUPED BY sex

I right now know how to do it for one date range. For example less than 1 day ago:

SELECT sex, count(*) peeps FROM player_account_demo WHERE last_demo_update>1275868800 GROUP BY sex

Which returns:

sex       peeps
UNKNOWN   22
MALE      43
FEMALE  86

However I'd have to do this once for each range. Is there a way to get all 3 ranges in there?

I'd want my end result to look something like this:

sex       peeps<1day      peeps1-7days       peeps7-30days

Thanks!

© Stack Overflow or respective owner

Related posts about mysql