이번 BNK 법인이익 프로젝트에 경남은행쪽을 진행하던 중 몇몇 테이블들이 시계열 테이블 구조로 이루어져 있다는 것을 알게되었다. 1. 시계열 데이터베이스(TSDB, Time Series Database) 란? [ 시계열 데이터(Time Series Data) 란? ] Time-Stamped Data라고도 불리는 Time Seriese Data(시계열 데이터)는 시간에 따라 저장된 데이터를 의미한다. 시계열 데이터들은 동일한 소스로부터 시간이 지남에 따라 만들어진 데이터들로 구성되므로 시간 경과에 따른 변화를 추적하는데 용이하다. 출처: https://mangkyu.tistory.com/188 [MangKyu's Diary:티스토리] 즉, 매일매일 어제와 같은데이터에 + 오늘 누적되는 데이터를 집어넣는 식..
초반 너무 SELECT만 하는 문제들은 건너뛰고 슬슬 단순히 손가락으로는 풀리지 않는 문제에 직면했다. 제목을 보아하니 이진트리 형태의 쿼리가 짜여진듯 한데 이런 형태에 P는 N의 부모인것을 규칙으로 데이터가 적재되어있다. 이런 상황에서 문제가 원하는 답은 Write a query to find the node type of Binary Tree ordered by the value of the node. Output one of the following for each node: Root: If node is root node. Leaf: If node is leaf node. Inner: If node is neither root nor leaf node. 각 노드의 값으로 정렬된 이진 트리의 노드 ..
사건의 발단 특정 컬럼 값이 동일한 항목에 대해서 다른 컬럼을 기준으로 가장 최종 항목을 조회하는 기능 이 기능을 구현을 끝내고 테스트를 하던 과정에서 기능이 비정상적인 동작을 한다는 얘기가 들려온다. 소스를 확인해보니 SELECT A , MAX(B) , MAX(C) , MAX(D) FROM TABLE WHERE A = @@@ GROUP BY A ...할 말을 잃었다 정녕 제정신으로 작성한 쿼리인가 정신차리고 수정 한 결과 SELECT A , MAX(B) KEEP(DENSE_RANK LAST ORDER BY 정렬기준컬럼) , MAX(C) KEEP(DENSE_RANK LAST ORDER BY 정렬기준컬럼) , MAX(D) KEEP(DENSE_RANK LAST ORDER BY 정렬기준컬럼) FROM TAB..