mysql 한 필드내부에서 값 합치기 3

by 신제트 [MySQL] [2022.07.12 13:14:50]


idx list date
1 1 2022-01-01
2 1 2022-01-02
3 2 2022-01-01
4 2 2022-01-02
5 3 2022-01-01
6 3 2022-01-02
7 4 2022-01-01
8 4 2022-01-02
9 5 2022-01-01
10 5 2022-01-02

안녕하세요 질문하나드리려합니다.

table a 가 있고 이안에  list라는 필드가있습니다

list에는 1~5의 숫자값이 들어가있고 

그 숫자들중 2와 5 그리고 1과 4 마지막 3의 개수값을 합치고싶습니다.

2와 5의 각각 값을 구해서 두값을 더하고 마찬가지 1과 4의 각각 개수값을 구한후 더하고 싶습니다 !!!!날짜별로!!!!

방법이있을까요  

 

원하는결과

2022-01-01  1과 4의 개수를 합한값

2022-01-01 2와 5의 개수를 합한값

2022-01-01 3의값

날짜별로 이렇게 구하고싶습니다

by 마농 [2022.07.12 13:25:52]

예시자료를 보여 주세요. 테이블(표) 형태로
원본 대비 결과표를 보여 주세요.


by 마농 [2022.07.12 13:44:16]
WITH t AS
(
SELECT 1 idx, 1 list, '2022-01-01' date
UNION ALL SELECT  2, 1, '2022-01-02'
UNION ALL SELECT  3, 2, '2022-01-01'
UNION ALL SELECT  4, 2, '2022-01-02'
UNION ALL SELECT  5, 3, '2022-01-01'
UNION ALL SELECT  6, 3, '2022-01-02'
UNION ALL SELECT  7, 4, '2022-01-01'
UNION ALL SELECT  8, 4, '2022-01-02'
UNION ALL SELECT  9, 5, '2022-01-01'
UNION ALL SELECT 10, 5, '2022-01-02'
)
SELECT date
     , (list - 1) % 3 + 1 gbn
     , COUNT(*) cnt
  FROM t
 GROUP BY date
     , (list - 1) % 3 + 1
;

 


by 신제트 [2022.07.12 14:59:00]

감사합니다!

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입