#title 어플리케이션 튜닝 [[TableOfContents]] 데이터베이스에서 어플리케이션 튜닝이라 함은 SQL 튜닝이라고 생각하면 된다. SQL 튜닝은 설계가 뒷받침 되지 않으면 한계가 있음을 알아야 한다. SQL 문법이나 툴의 사용법등의 기본적인 내용들은 설명하지 않았다. 그러므로 처음에 읽다가 이해가 안되는 부분이 있을 것이다. 이럴 경우 건강을 위해서는 필자를 욕하고 실력 향상을 위해서는 독자 자신을 욕하라. 이러한 것들은 다른 서적과 도움말, 웹문서를 이용하여 익히기 바란다. SQL은 간결함과 효율성(적절한 자원사용량) 사이에서 잘 조율되어야 한다. 해당 조직의 사람들이 SQL구사 능력이 뛰어나다면 복잡하지만 효율성이 좋은 SQL로 문제를 해결해도 되겠지만, 그 반대의 경우라면 적절한 조화가 필요할 것이다. 요즘(2011년)이라면 간결함에 더 점수를 주고 싶다. 왜? 하드웨어가 워낙 싸고 좋아졌으니까.. ==== 어플리케이션 튜닝 ==== * [최단경로찾기] * [https://blogs.msdn.microsoft.com/sqlserverstorageengine/2017/05/29/use-with-clause-in-openjson-to-improve-parsing-performance/ Use WITH clause in OPENJSON to improve parsing performance] * [작업 할당 최적화 문제] * [json 형태로 만들기] * [t-sql에서 greatest함수 대체하기] * [문자열 압축하기] * [CASE WHEN 순서] * [정렬 문제1] * [집계 후 조인이 안된 사례] * [사용자 정의함수 병렬처리 문제] * [between join을 hash join으로] * [집계 부하분산] * [막대그래프] * [문자열 수식 계산] * [CSV형태의 컬럼에서 이빨빠진 가장 작은 숫자 찾기] * [클라이언트 커서와 서버 커서] * [부분정렬] * [http://blogs.solidq.com/rdyess/Post.aspx?ID=3&title=Review+of+some+different+ways+to+delete+data delete 방법들] * [고립문제와 간격문제] * [범위 중복 문제] * [앞뒤 숫자 찾기] * [3연속 승리] * [동적쿼리를 이용한 BETWEEN JOIN의 최적화] * [tempdb의 최적화된 사용방법] * [LEFT OUTER JOIN vs UNION ALL ~ GROUP BY] * [프로시저 호출의 직렬화] * [DELETE를 빠르게 하는 방법] * [각 로우 값 사칙연산] * [String Compare2] * [String Compare1] * [초성/중성/종성] * [기본적인 사항들] * [임시테이블 사용패턴] * [Split 패턴] * [SQL튜닝의 3가지 관점] * [상황에 따른 SQL] * [집합적 사고방식의 실전 응용 예] * [정규화가 되지 않아 복잡한 어플리케이션을 작성하는 예] * [SQL 실행결과의 해석] * [조인 횟수의 축소] * [함수를 이용한 연결 액세스 튜닝 사례] * [Hash Match/Cache] * [적절한 인덱스의 사용] * [Left()함수가 더 빠를까? Right()함수가 더 빠를까?] * [관계와 옵티마이저] * [셀프조인 업데이트] * [조인 순서의 조정] * [UnPivot 문제] * [가로를 세로로] * [문자열 bit연산 문제] * [이전 Row 접근하기] * [선수수익] * [그룹의 첫 번째 값만 나타나게 하기] * [그룹의 첫 번째 값만 나타나게 하기 - 또 다른 형태] * [그룹별 순번 만들기] * [소계/합계 만들기] * [2차원 배열 형태의 문제] * [한방쿼리에 대하여] * [중복행 제거하기(2005 이상)] * [애매한 조건의 랜덤추출] * [EXISTS ~ UPDATE ~ INSERT 패턴] * [점을 선분으로] * [데이터의 내용과 관련된 문제] * [The Hidden Costs of INSERT EXEC] * [COUNT(DISTINCT) 성능] * [MS-SQL에서 Oracle의 Sequence 따라하기] * [집합 대 집합 연산] * [숫자의 그룹화] * [빌링의 차감 및 선입선출 방법] * [시작~종료 형태에서의 인덱스 정렬 순서에 따른 성능 영향 요소] ==== 참고할 만한 질문들 ==== * http://www.devpia.com/Maeul/Contents/Detail.aspx?BoardID=38&MAEULNo=16&no=72574&ref=72574