我想要显示像这样的数据我在哪里GROUP
上DATE
:MySql的多列从单列表选择与分组
Date Star1 Star2 Star3 Star4 Star5
2012-10-25 null null null 1 1
我目前的表有三(3)列,显示:
ID DATE RATING
5 2012-10-25 4
6 2012-10-25 5
我使用此查询来尝试实现上述数据:
SELECT
DATE,
CASE
WHEN RATING = 1 THEN 1
ELSE NULL
END AS STAR1,
CASE
WHEN RATING = 2 THEN 1
ELSE NULL
END AS STAR2,
CASE
WHEN RATING = 3 THEN 1
ELSE NULL
END AS STAR3,
CASE
WHEN RATING = 4 THEN 1
ELSE NULL
END AS STAR4,
CASE
WHEN RATING = 5 THEN 1
ELSE NULL
END AS STAR5
FROM
table1
WHERE
DATE = '2012-10-25'
GROUP BY DATE
ORDER BY DATE
这只能吐出一个等级寿:
Date Star1 Star2 Star3 Star4 Star5
2012-10-25 null null null null 1
它像它不是在日期分组,我怎么能做到这一点?
这工作谢谢你! – ToddN
太棒了!很高兴我能帮上忙。 – MikeB