값이 올랐는지, 상태가 바뀌었는지 확인하려면 직전 값과의 비교가 필요합니다.
이럴 때 사용하는 함수가 바로 LAG()입니다.
SELECT
trade_date,
stock_price,
LAG(stock_price) OVER (ORDER BY trade_date) AS prev_price,
CASE
WHEN stock_price > LAG(stock_price) OVER (ORDER BY trade_date) THEN 1
ELSE 0
END AS is_up
FROM stock_price;
LAG(stock_price)로 전일 주가를 불러오고, 당일 가격과 비교해 상승 여부를 1, 0으로 표시✔️ LAG()는 이전 값을 가져와, 변화 감지나 시계열 기반 분석에 자주 사용됩니다.