我有一个 MySQL 表,其结构和数据如下所示:
姓名 | 日期 | 类型 | 价值 -----+------------+--------+------ 富 | 2013-01-01 | 蓝色 | 4 富 | 2013-01-02 | 绿色 | 1 富 | 2013-01-01 | 蓝色 | 9 富 | 2013-01-02 | 绿色 | 5 酒吧 | 2013-01-01 | 蓝色 | 10 酒吧 | 2013-01-02 | 绿色 | 4 酒吧 | 2013-01-01 | 蓝色 | 6 酒吧 | 2013-01-02 | 绿色 | 2 喵 | 2013-01-01 | 蓝色 | 5 喵 | 2013-01-02 | 绿色 | 6 喵 | 2013-01-01 | 蓝色 | 4 喵 | 2013-01-02 | 绿色 | 4
我正在尝试构建一个将产生此输出的查询:
姓名 | 蓝色 | 绿色 -----+------+------ 富 | 13 | 6 酒吧 | 16 | 6 喵 | 9 | 10
该name
列保持不变。输出的blue
和green
列是根据type
表列的值生成的。这两列的值是value
所有date
s 的表列的累加值。我希望这是有道理的。
当谈到 MySQL 时,这有点超出我的范围,所以我不知道从哪里开始。这是否可以使用 MySQL,如果可以,如何?例如,如何根据单个表列的值创建输出列?
编辑:我应该指定;不需要这是一个单一的查询。只要它可以在不涉及 MySQL 以外的任何其他技术的情况下完成,那么我对子查询、多个查询、视图等没有任何限制。