Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- Loki 로그
- 스프링Boot 개발환경
- save/update
- jar 배포
- jsonMarshaller
- UnsupportedOperationException
- 애자일 싫타
- 노드간 통신
- nGinder
- formik
- 플루터
- OIDC
- LPOS
- ㅉ때
- 핀포인트
- 논블록킹 성능
- 개발 어렵당.ㅠ
- RedirectService
- reids
- nodeSelector
- hbase 저장공간 설정
- fake jwt
- R2DBC Paging
- 더티체킹
- Ingress Controller Fake
- pinpoint 2.5.3
- Armeria
- pinpoint
- intellij
- 월급루팡 일지
Archives
- Today
- Total
대머리개발자
group_concat 속 문자 정렬하기 본문
728x90
해당 기능이 있는 줄은... 역시 뭐든 잘 얻어 걸려야 한다. (잘 검색해야 한다.)
group_concat은 row 데이터를 column 로 변경해 준다.
설문지 응답 데이터이다.
특정 사용자로 group by를 하고 응답을 하나의 Row으로 변경한다.
물론 데이터를 구분 할 수 있는 딜리미터(|@|)가 필요하다.
group_concat(qc.view SEPARATOR '|@|')
...
group by userId
여기서 내가 원했던 기능은 질문의 순서대로 row가 정렬하고자 했던 부분이다.
질문지의 ID로 group_concat을 했더니 엉망이다...ㅠ
그냥 row 레벨로 풀어서 엑셀 내보내기를 해두 된다. But 서비스 로직이 복잡해 진다.
복잡해 지면 추후에 다시 볼 때 머리에 지진이 온다.
해서 뭐든 최대한 심플하게 우하하게 풀어 내야 한다.
꾸역꾸역 만들면 안 된다. 똥 된다.
간단하게 group_concat 안에 questionId asc를 명시해주면 된다.
group_concat(value ORDER BY a.questionId ASC SEPARATOR '|@|')
group by a.userId, a.questionId
-- order by a.userId, a.questionId
사실 "group by [컬럼]절"은 "order by [컬럼] asc절" 를 기본으로 포함하는 것으로 알고 있었기 때문에
그냥 당연히 questionId asc 형태로 group_concat이 될 줄 알았다.
앗.. 질문의 순서가 바뀐다면....ㅅㅂ
순서를 명시한 sort를 통해서 정렬을 다시 했다. ㅎㅎ
728x90
'개발이야기 > DataBase' 카테고리의 다른 글
CROSS JOIN 언제 쓸까 했는데.. (0) | 2024.07.09 |
---|---|
마이그레이션(MyBatis -> R2DBC) 언제나 즐겁네! (0) | 2024.07.08 |
R2DBC 객체 등록/수정 고민 (0) | 2024.05.29 |
R2DBC 한 방 쿼리 고민s -> 안 된다! (0) | 2024.05.21 |
R2DBC Native 쿼리에 날짜 컬럼 바인딩. (0) | 2024.05.08 |