본문 바로가기

개발/데이타베이스39

ORACLE OVER() 함수 설명 ★ OVER()함수란? OVER함수는 ORDER BY, GROUP BY 서브쿼리를 개선하기 위해 나온 함수라고 할 수 있습니다. ★ 전통 SQL 사용 SELECT YYMM, PRICE FROM ( SELECT YYMM, SUM(TOT_PRICE) AS PRICE FROM TABLE1 GROUP BY YYMM ORDER BY YYMM DESC ) ★ OVER 함수 이용 SELECT YYMM, SUM(TOT_PRICE) OVER(ORDER BY YYMM DESC) AS PRICE FROM TABLE1 ★ COUNT(*)OVER() 사용 실제 데이터와 함께 해당 테이블의 전체 로우 컬럼을 쉽고 편리하게 추출할 수 있다. SELECT MENU_ID, MENU_NAME, COUNT(*) AS TOTALCOUNT .. 2017. 1. 5.
spring boot - db auto reconnect spring.datasource.testOnBorrow=true spring.datasource.validationQuery=select * from dual --- (oracle)select 1 ----- (mysql) 출처 : http://stackoverflow.com/questions/22684807/spring-boot-jpa-configuring-auto-reconnect 2016. 12. 5.
dbcp 설정값들 모음 DB Connection Pool을 사용하기 위해서 Apache Commons의 dbcp를 많이 사용하고 있지만 매번 설정값에 대한 정확한 정의와 설정방법을 까먹는 경향이 있어 일반적인 설정값 가이드를 아주 간단히 정리하고자 한다. maxActive (최대 active connection 개수??) + 그냥 최대 Connection 개수로 생각하면된다. + 기본값은 8이며, 적당히? 설정하면 된다. minIdle + 사용되지 않고 풀에 저장될 수 있는 최소 커넥션 개수 + 기본값은 0이며, 기본값을 사용하게 되면 connection pool이 비어버릴 수 있기 때문에 기본값 대신 적당한 설정이 필요하다. maxIdle + 사용되지 않고 풀에 저장될 수 있는 최대 커넥션 개수 + 기본값은 8이며, 일반적으.. 2016. 12. 5.
인덱스 재구성 인덱스 재 구성 인덱스가 생성된 후에 새로운 행이 추가 되거나 삭제될 수도 있고 인덱스로 사용된 컬럼 값이 변경될 수도 있습니다. 이럴 경우는 본 테이블에서 추가, 삭제, 갱신 작업이 일어날 때 해당 테이블에 걸린 인덱스의 내용도 함께 수정 되어야 합니다. 이 작업은 오라클 서버에 의해 자동적으로 일어나는데 그렇기 때문에 인덱스가 없는 경우 보다 DML 작업이 훨씬 무거워지게 됩니다. 그리므로 시간이 지나 원 테이블의 자료가 많이 변경되면 테이블에 따른 인덱스는 이런 이유로 효율이 떨어지게 됩니다. 따라서 인덱스는 한번 만들고 끝까지 사용하는게 아니라 가끔 한번씩 재생성을 해주어야만 빠른 효율을 누릴 수 있습니다. 인덱스(INDEX) 재 생성 방법 SQL> ALTER INDEX idx_ename_emp .. 2016. 11. 29.