文章目录
题目
代码(7.18 首刷看解析)
这题的知识点蛮多的
DATE_FORMAT(date, format)
:用于以不同的格式显示日期/时间数据。date 参数是合法的日期,format 规定日期/时间的输出格式。- 上面是个格式化函数,格式化函数会在group之前执行,即使在select语句中
所以当进行group by
的时候,month已经是年-月的形式了。
# Write your MySQL query statement below
select DATE_FORMAT(trans_date, '%Y-%m') month,
country,
count(1) trans_count,
count(if(state='approved', 1, NULL)) approved_count,
sum(amount) trans_total_amount,
sum(if(state='approved', amount, 0)) approved_total_amount
FROM Transactions
GROUP BY month, country;