Transactions
+---------------+---------+
| Column Name | Type |
+---------------+---------+
| id | int |
| country | varchar |
| state | enum |
| amount | int |
| trans_date | date |
+---------------+---------+
id는 이 테이블의 기본 키입니다.
이 테이블에는 들어오는 트랜잭션에 대한 정보가 있습니다.
state 열은 ["승인됨", "거부됨"] 유형의 열거형입니다.
월별, 국가별 거래 수와 총 금액, 승인된 거래 수와 총 금액을 찾기 위한 SQL 쿼리를 작성합니다.
결과 테이블을 임의의 순서로 반환합니다.
SELECT DATE_FORMAT(trans_date, '%Y-%m') AS month , country , COUNT(DATE_FORMAT(trans_date, '%Y-%m')) AS trans_count , SUM(CASE WHEN state = 'approved' THEN 1 ELSE 0 END) AS approved_count , SUM(amount) AS trans_total_amount , SUM(CASE WHEN state = 'approved' THEN amount ELSE 0 END) AS approved_total_amount FROM Transactions GROUP BY DATE_FORMAT(trans_date, '%Y-%m'), country ;