MySQL 서브쿼리 - 바로 이전 값과 비교해서 올라갔는지, 내려갔는지 확인하는 쿼리
2019.02.21 17:34
서브쿼리 - 바로 이전 값과 비교해서 얼마나 올라갔는지, 얼마나 내려갔는지 확인할 수 있는 쿼리
game_ccu_log 라는 테이블에 "YYYY-MM-DD HH:MM:SS" 로 ccu_count 라는 값이 저장되어 있다면,
아래와 같은 서브쿼리를 이용해서 바로 이전과 비교해서 ccu_count 값이 올라갔는지, 내려갔는지.
올라갔다면 이전 값에 비해 몇 퍼센트 올라갔는지 알 수 있습니다.
Select reg_time, ccu_count, diff_time, diff_count, ccu_count*0.07 as ccu_7p, if(diff_count<0,diff_count*-1, diff_count) as diff_count2, if(ccu_count*0.07 < if(diff_count<0,diff_count*-1, diff_count),1,0) as check_ccu, adddate(reg_time,interval 9 hour) as reg_time2 FROM ( Select reg_time, ccu_count, timediff(now(), t1.reg_time)>'00:05:00' as diff_time, ( cast(t1.ccu_count as signed)- ( SELECT cast(t2.ccu_count as signed) FROM game_ccu_log as t2 WHERE server_type='Game' and t2.reg_time < t1.reg_time ORDER BY t2.reg_time DESC LIMIT 1 ) ) as diff_count FROM game_ccu_log as t1 WHERE reg_time>='${date_now}' AND server_type='GameCCU' ORDER BY reg_time desc limit 1 ) as a
날짜 데이터는 ${date_now} <- 이런 식으로 변수로 입력받게 되어있습니다.
적절하게 사용하면 동접 급감, 급증에 대한 알람을 받을 수 있습니다.
댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
25 | 중국에서 연결 잘되는 네임서버 - China DNS | MaraSong | 2016.05.23 | 1167 |
24 | android emulator 안드로이드 애뮬레이터 | MaraSong | 2016.05.28 | 1174 |
23 | Installing Nagios Agent (NRPE) on CentOS 7 | MaraSong | 2019.04.17 | 1212 |
22 | 윈도 2008 + MSSQL 2005 설치 | MaraSong | 2016.05.20 | 1226 |
21 | 로그파일 LDF 파일 용량 줄이기 | MaraSong | 2019.01.24 | 1240 |
20 | @MaraOCRbot 이미지에서 텍스트를 추출하고 한국어로 번역해주는 텔레그램 봇 소개 | MaraSong | 2019.08.07 | 1241 |
19 | @MaraOCRbot 이미지에서 텍스트를 추출하고 한국어로 번역해주는 텔레그램 봇 소개 | MaraSong | 2019.08.13 | 1343 |
18 | MySQL - with(nolock) 같은 힌트 : isolation level 변경하기. | MaraSong | 2020.04.15 | 1418 |
17 | 시력보호 프로그램 Flux | MaraSong | 2016.05.05 | 1452 |
16 | 백업시 에러 : The backup of full-text catalog 'DB' is not permitted because it is not online. [9] | MaraSong | 2019.01.28 | 1452 |
* 쿠팡 파트너스 활동을 통해 일정액의 수수료를 제공받을 수 있습니다.