mysql 按列显示_按客户分组并按月列枢轴查询显示的Mysql销...

假设您有以下表格:

mysql> select * from sales;

+-------------+--------+------------+

| customer_id | amount | date |

+-------------+--------+------------+

| 1 | 12 | 2015-01-01 |

| 1 | 1 | 2015-01-02 |

| 1 | 663 | 2015-02-12 |

| 2 | 22 | 2015-01-03 |

| 2 | 21 | 2015-02-12 |

| 2 | 11 | 2015-02-12 |

| 2 | 9 | 2015-04-12 |

+-------------+--------+------------+

您可以使用此查询执行此操作:

SELECT

customer_id,

sum(if(month(date) = 1, amount, 0)) AS Jan,

sum(if(month(date) = 2, amount, 0)) AS Feb,

sum(if(month(date) = 3, amount, 0)) AS Mar,

sum(if(month(date) = 4, amount, 0)) AS Apr,

sum(if(month(date) = 5, amount, 0)) AS May,

sum(if(month(date) = 6, amount, 0)) AS Jun,

sum(if(month(date) = 7, amount, 0)) AS Jul,

sum(if(month(date) = 8, amount, 0)) AS Aug,

sum(if(month(date) = 9, amount, 0)) AS Sep,

sum(if(month(date) = 10, amount, 0)) AS Oct,

sum(if(month(date) = 11, amount, 0)) AS Nov,

sum(if(month(date) = 12, amount, 0)) AS `Dec`

FROM sales

GROUP BY customer_id;

并输出:

+-------------+------+------+------+------+------+------+------+------+------+------+------+------+

| customer_id | Jan | Feb | Mar | Apr | May | Jun | Jul | Aug | Sep | Oct | Nov | Dec |

+-------------+------+------+------+------+------+------+------+------+------+------+------+------+

| 1 | 13 | 663 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |

| 2 | 22 | 32 | 0 | 9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |

+-------------+------+------+------+------+------+------+------+------+------+------+------+------+

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值