我有以下的数据库结构:MySQL查询拆分柱为m
FieldID|Year|Value
a|2011|sugar
a|2012|salt
a|2013|pepper
b|2011|pepper
b|2012|pepper
b|2013|pepper
c|2011|sugar
c|2012|salt
c|2013|salt
现在我想运行计数字段数为每个项目在某一年看起来像这样的查询:
value|2011|2012|2013
sugar|2|0|0
salt |0|2|1
pepper|1|1|2
我以前每年都使用多个表格。然而,对于2011,2012和2013年不同的值可能是不同的(例如糖只会出现在2011年)
个别年份我用:
SELECT `Value`, COUNT(`FieldID`) FROM `Table` WHERE `Year`=2011 GROUP BY `Value`
虽然我喜欢所有三种解决方案,但我给了这一个+1的额外解释。但是,感谢大家为此迅速解决此问题。 – user2386786