이벤트 발생할 때 전달되는 메시지에 변경된 속성값만 들어오는데 이렇게 저장된 테이블에서 각 컬럼별로 null 이 아닌 최종값을 한 줄의 row 로 머지해서 처리해야 하는 경우가 생겨서 고민해왔는데 mysql 의 GROUP_CONCAT 란 함수 이용해서 어떻게 결과는 구했습니다. 제가 SQL 이 짧은 관계로 더 나은 해법을 못 찾고 있는데 조언 좀 ...
말보다 예가 이해하기 좋을겁니다. 사용 예를 올려놨습니다. http://sqlfiddle.com/#!9/8e6ab1/1아, 참고로 Oracle 에는 비슷한 함수로 LISTAGG 란게 있군요.
select cont_nr,
SUBSTRING_INDEX(GROUP_CONCAT(YD_POS_TP_CD), ',', -1) YD_POS_TP_CD,
SUBSTRING_INDEX(GROUP_CONCAT(CONT_POS_BLK_NM), ',', -1) CONT_POS_BLK_NM,
SUBSTRING_INDEX(GROUP_CONCAT(CONT_POS_BAY_NM), ',', -1) CONT_POS_BAY_NM,
SUBSTRING_INDEX(GROUP_CONCAT(IF(LMT_TEMP=0, null, LMT_TEMP)), ',', -1) LMT_TEMP,
SUBSTRING_INDEX(GROUP_CONCAT(CURT_TEMP), ',', -1) CURT_TEMP
from iv_temp
group by cont_nr
'Slack 채널 정리' 카테고리의 다른 글
js - camel <-> snake (0) | 2019.11.27 |
---|---|
CNCF (Cloud Native Computing Foundation) (0) | 2019.11.27 |
JPA 에서 mariaDB point 타입 이용 방법 (0) | 2019.11.27 |
회사 애자일 멘토 롤아웃에 대한 단상 (0) | 2019.11.27 |
제목 붙이기 애매한 자바 코딩 얘기 (0) | 2019.11.27 |