2012-06-08 5 views
0

таблицы БДнайти MaxDate и MinDate при группировании

TYPE  DATE   PLAYER MINUTE 
--------------------------------------- 
starter 2000-01-01 Tom  
starter 2005-01-01 Tom  
starter 2005-01-01 Ben 
starter 2010-01-01 Tom 
subbedin 2012-01-01 Ben  46 

Запрос

$query = mysql_query("SELECT *, 
SUM(CASE WHEN type = 'starter' OR type = 'subbedin' THEN 1 ELSE 0 END) AS apps, 
SUM(CASE WHEN Tüüp = 'starter' THEN 90 ELSE 0 end + CASE WHEN Tüüp = 'subbedin' THEN 91 - minutes ELSE 0 end) AS minutes 
FROM players 
GROUP BY player 
ORDER BY apps DESC minutes DESC 
"); 

Я группировать результаты по игроку вместе с их появлений и минут, но у меня возникают проблемы при получении его, чтобы показать дата первого и последнего появления.

PLAYER APPS MINUTES FIRST  LAST 
------------------------------------------------- 
Tom  3  270  2000-01-01 2010-01-01 
Ben  2  135  2005-01-01 2012-01-01 

ответ

0

Попробуйте это ....

SELECT 
    SUM(CASE WHEN type = 'starter' OR type = 'subbedin' THEN 1 ELSE 0 END) AS apps, 
    SUM(CASE WHEN type = 'starter' THEN 90 ELSE 0 end + CASE WHEN type = 'subbedin' THEN 91 - minutes ELSE 0 end) AS `minutes`, 
    MIN(`DATE`) as `FIRST`, 
    MAX(`DATE`) as `LAST` 
    FROM players 
    GROUP BY player;