■ 개발 정리/Mysql, MariaDB

같은값이 연속으로 몇번 나오는지 알 수 있는 쿼리문

파코키 2018. 4. 19. 11:05


쿼리문


SELECT

regdate, pv_sid, k 

FROM ( SELECT  regdate, pv_sid, IF( @prev = pv_sid, @k:= @k + 1, @k:= 1) AS k, 

@prev := pv_sid FROM pv_history ) x



regdate, pv_sid 를 표시해주고 pv_sid 가 같은값이 나올때 k 가 1부터 1씩 늘어남

이로인해 pv_sid가 연속으로 같은값이 몇개가 나오는지 알 수있음





쿼리문


SELECT

regdate, pv_sid, k 

FROM ( SELECT  regdate, pv_sid, IF( @prev = pv_sid, @k:= @k + 1, @k:= 1) AS k, 

@prev := pv_sid FROM pv_history ) x

where k=1


where 절에 k = 1 조건을 넣음으로써 pv_sid의 연속된 값이 최초 시작될때만 결과값으로 가져옴

상태값이 바뀐 상황을 가져오기 좋음