2009-07-28 6 views
0

を、私は私に次のSQLを与えるために役立っている、前にこのことについて投稿している:MySQLの平日/週末数える - パートII

SELECT fname, MONTH(eventDate) , IF(WEEKDAY(eventDate) <5, 'weekday', 'weekend') AS 
DAY , COUNT(*) 
FROM eventcal AS e 
LEFT JOIN users AS u ON e.primary = u.username 
GROUP BY fname, MONTH(eventDate) , IF(WEEKDAY(eventDate) <5, 'weekday', 'weekend') ; 

をそして、それは私に次のような結果が得られます。

fname MONTH(eventDate) DAY  COUNT(*) 
Kevin 7     weekday  3 
Kevin 7     weekend  1 
Missy 7     weekday  3 
Missy 7     weekend  1 

I

fname MONTH(eventDate) Weekday COUNT  WEEKEND COUNT 
Kevin 7     3     1 
Missy  7     3     1 

誰でも助けてもらえますか?あなたはSELECTであなたの集計(この場合はSUMを)やりたいMySQL/PHP Algorithm for Weekday/Weekend count (per month)

答えて

2
SELECT 
    fname, 
    MONTH(eventDate), 
    SUM(IF(WEEKDAY(eventDate) < 5,1,0)) AS WeekdayCount, 
    SUM(IF(WEEKDAY(eventDate) >= 5,1,0)) AS WeekendCount 
FROM eventcal AS e 
LEFT JOIN users AS u ON e.primary = u.username 
GROUP BY fname, MONTH(eventDate); 

:私はあなたがで「ユーザー」と「eventcal」の私のスキーマを見ることができます...

それを大幅に感謝します、およびGROUP BYの合計(fname、MONTH)を合計します。