본문 바로가기

STUDY/SQL9

MYSQL 시간별 통계쿼리 MARIADB에서 통계쿼리를 뽑아내야하는 일이 있었다. POSTRES, ORACLE 같은 경우에는 통계쿼리를 구해낼 수 있는 함수가 있는 것에 반해, MYSQL는 그렇지않은거 같았다. 찾아보는중 SET @n:=TIMESTAMP(NOW() + INTERVAL 1 HOUR);SELECT (SELECT @n:= @n - INTERVAL 1 HOUR) DATEFROM TABLE LIMIT 24cs 위의 쿼리는 현재시간 기준으로 1시간간격 24개를 뽑아내는 쿼리이다. ------ 위의 방식으로 하지않는다면 JAVA에서 1시간 간격으로 배열을 정의 후 MYSQL-MYBATIS에서 foreach구문을 이용하여 UNION ALL하여 시간별 테이블을 생성 후 JOIN하는 방식으로 이용해야 할 것 같다. UNION ALL.. 2018. 8. 23.
TIBERO DATA IMPORT, EXPORT 현재 티베로 스테이지DB에서 개발DB로 한방에 백업본을 옮기는 작업을 찾아보고 정리를 하려고 한다. 티베로DB에서 EXPORT cmd> tbexport ip=127.0.0.1 port=8629 sid=tibero username=test password=test full=y file=D:\backup\export_20170710.dat logdir=D:\backup\logcs 티베로DB에 IMPORT cmd> tbimport ip=127.0.0.1 port=8629 sid=tibero username=test password=test full=y file=D:\backup\export_20180710.dat log=D:\backup\log\import_log_20180710.logcs 자세한 옵션 도움말.. 2018. 7. 2.
GENERATE_SERIES() generate_series() 시리즈 생성 함수 통계쿼리를 살펴보는 중 찾아보았다. oracle에서 CONNECT BY LEVEL 비슷한 기능을 한다. 아래 링크 참조 - https://www.postgresql.org/docs/9.5/static/functions-srf.html 예제)-- 시간별SELECT TO_CHAR(START_DATE, 'YYYY-MM-DD HH24:00') AS START_DATE, TO_CHAR(START_DATE +'1 hours', 'YYYY-MM-DD HH24:00') AS END_DATEFROM generate_series(TO_CHAR(CURRENT_TIMESTAMP + '-1 days','YYYY-MM-DD HH24:00')::timestamp, CURRENT_T.. 2018. 5. 4.
LTRIM, RTRIM, TRIM LTRIM, RTRIM, TRIM 에 대해 알아보자(문자열 제거). LTRIM : 왼쪽 잘라내기RTRIM : 오른쪽 잘라내기TRIM : 양쪽 잘라내기 예제SELECT LTRIM('ABCDEFABC', 'ABC') AS RESULT FROM DUAL SELECT RTRIM('ABCDEFABC', 'ABC') AS RESULT FROM DUAL SELECT TRIM(' ABCDEFABC') AS RESULT FROM DUAL -- 공백제거SELECT TRIM(BOTH 'A' FROM 'ABCDEFABCA') AS RESULT FROM DUAL -- 양쪽 A제거SELECT TRIM(LEADING 'A' FROM 'ABCDEFABC') AS RESULT FROM DUAL --왼쪽 A제거SELECT TRIM(TR.. 2018. 2. 23.