잔액 테이블을 만들면서 알게 된 나름의 노하우? 이다. 조회 시점에서 ORDER BY를 하면 값이 원하는 대로 나오지 않는 경우가 있어서 조회된 결과를 ORDER BY 하고 싶은 방법을 찾았다. 1. FROM 절에 원하는 결과가 나온 쿼리를 적는다 2. sql변수를 활용하여 임시 인덱스를 만들어준다. 3. 임시 인덱스를 ORDER BY 해준다. SELECT 임시 인덱스 AS 인덱스 s.*-- 출력 FROM(원하는 결과 순서가 나온 쿼리) AS s ORDER BY 인덱스 DESC;

처음 잔액, 잔고 테이블을 구성할 때 누적 잔액을 어떻게 구현해야할지 고민을 많이 했었다. 1. DB에 누적 잔액 컬럼을 만들어서 매번 누적잔액을 넣어야하나? 2. 아니면 SQL문으로 그때그때의 실시간 누적잔액을 계산해야하나? 1번은 컬럼에 저장해버리면 어느 시점부터의 누적 잔액을 조회하고 싶을 때 조회 하기가 힘들다. 2번으로 구현하려니 쿼리를 짜는 게 여간 복잡한 게 아니었다. 하지만 유동적이고 유연한? 조회를 위해 1번이 아닌 2번으로 쿼리를 짜기로 했다... 잔액 테이블(balance) 날짜(balance_date) 변동금액(change_balance) 잔액테이블 기본키(PK)(balance_id) 2022-04-21 6000 1 2022-04-22 -2000 2 2022-04-18 2000 3 ..
Comment