본문 바로가기

It's all !

[실행계획] Exercise_03 ▶ 실행계획 설명 1-1. DUAL 테이블을 접근 -> 조건에 ROWNUM을 이용한다. 1-2. WORK_INF 테이블에 FULL SCAN으로 접근한다. 2. 1-1, 1-2의 결과 집합을 CARTESIAN JOIN을 통해서 연결해준다. 3. ORDER BY 순으로 SORTING을 해주고보여준다. ▶ 추가 설명 (1) FAST DUAL - Oracle 9i 에서 사용되는 DUAL의 FULL TABLE SCAN 대신 10g에서는 FAST DUAL optimization plan을 사용한다. Use DUAL Freely 아래와 같은 명령을 실제로 사용하는 개발자(또는 DBA)의 수가 얼마나 될 것이라 생각하십니까? select USER into from DUAL 아마 거의 모든 이들이 사용하고 있을 것입니다.. 더보기
[SQL 고수되기] 열한번째 이야기 출처 : 네이버지식인 노하우 http://kin.naver.com/knowhow/detail.nhn?d1id=8&dirId=8&docId=553699&qb=U1FMIOqzoOyImOuQmOq4sCDsl7TtlZzrsojsp7gg7J207JW86riw&enc=utf8&section=kin&rank=1&search_sort=0&spq=0&pid=go1ZH35Y7vwsstEJfvZssc--411835&sid=TozeLPJwjE4AABooIow 안녕하세요. 오랜만에 이야기를 시작합니다. 오늘 할 이야기는 지난번 이야기에서 잠깐 이야기 나누웠던 통계현황 조회에 대해 구체적으로 이야기해볼까합니다. 이거 기억하시죠? ┌────┬───┬───┬───┬───┬───┬───┬───┬────┐ │ 사번 │ 일 │ 월 │ 화.. 더보기
[SQL 고수되기] 열번째 이야기 출처 : 네이버지식인 노하우 http://kin.naver.com/knowhow/detail.nhn?d1id=8&dirId=8&docId=553302&qb=U1FM6rOg7IiY65CY6riwIC0g7Je067KI7Ke4IOydtOyVvOq4sA==&enc=utf8&section=kin&rank=1&search_sort=0&spq=0 이번 이야기에선 앞으로 많이 활용되어질 아르바이트생정보에 대해 만들어볼까합니다. 종종 발생하는 Data Migration 방식을 보여드리고저 하는데 이땐 우편번호 정보가 필요합니다. 전부 다 가지고 계신게 아니기에 그냥 간단하게 주조를 고정시키고 만드는 방법과 랜덤하게 주소를 만드는 방법 두가지로 만들겠습니다. 참고로 우편정보 필요하신분들은 하단 의견란에 글남기시면 메일로 .. 더보기
[SQL 고수되기] 아홉번째 이야기 출처 : 네이버지식인 노하우 http://kin.naver.com/knowhow/detail.nhn?d1id=8&dirId=8&docId=553087&qb=U1FMIOqzoOyImOuQmOq4sCDslYTtmYnrsojsp7g=&enc=utf8&section=kin&rank=1&search_sort=0&spq=0&pid=go1vx35Y7t0ssskYj7wssc--063939&sid=TozeLPJwjE4AABooIow 지난 이야기에서 함 해보시라고 한거 해보셨지? ^^ 문제) 4월 출퇴근형황 정보를기준으로 다음처럼 요일별 근무시간합을 조회해보세요 ┌────┬───┬───┬───┬───┬───┬───┬───┐ │ 사번 │ 일 │ 월 │ 화 │ 수 │ 목 │ 금 │ 토 │ ├────┼───┼───┼───┴──.. 더보기
[실행계획] Exercise_02 ▶ 계획 설명 1. WORK_INF 테이블을 Full Scan한다. - 이때 300row와 11K 만큼 Access를 하게 된다. 2. Access한 데이터를 group by를 한다. --> 위에서 HASH (GROUP BY)를 진행한다. version 10.2 에서 부터 GROUP BY가 SORT GROUP BY에서 HASH GROUP BY로 바뀌었다고 한다. 그래서 GROUP BY 한 결과가 기존에서는 SORT되어 보여주었지만 이 버전부터는 SORT되지 않은 채로 보여준다. 그래서 SORT된 결과 값을 보기위해서는 ORDER BY 절에 GROUP BY절에 설정한 것들을 추가해야 한다. 그리고 이렇게 되었을 경우에는 HASH GROUP BY가 아닌 SORT GROUP BY가 된다. ▶ 추가 설명 (Ha.. 더보기
[실행계획] Exercise_01 ◆ 여러가지 쿼리에 대해서 시험을 해 볼 것이다. 어떤 식으로 실행계획이 만들어지는지 하나하나 살펴볼 것이다. 차근차근 ... 단계를 밟아 나가자..... start ▶ 실행계획 설명 1. employees 테이블을 full scan하여 액세스한다. 이때 8 row, 96 Byte를 access한다. 2. employees 테이블을 full scan하여 액세스한다. 이때 10 row, 120 Byte를 access한다. 3. 1,2 에서 액세스한 두 테이블에 대해 union-all(중복포함)을 한다. 4. 결합된 데이터에 대해 order by 순으로 sort를 해주고 해당 데이터를 보여준다. ▶ 용어 설명 Cost 어떤 특별한 측정 단위가 아니고 비용기반 옵티마이저가 하나의 SQL에 대해 여러 개의 .. 더보기
[Notice]실행계획 카테고리 생성 실행계획에 관련된 카테고리를 생성을 했다. 최근에 Homo Convergence Story를 바탕으로 해서 여러 분야에 대해서 고민을 하고 사유하는 시간을 가지고자 한다. 그 중에 SQL에 대한 고급 기능 이해 및 튜닝에 대한 역량강화를 위해 해당 카테고리를 만들었다. 이것에 대해 나도 모르기에 개념부터 용어부터 하나하나 실행해나가려고 한다. 이 카테고리가 자리가 잡혀갈즈음이 기대된다. 변해있는 나의 모습이~~ 더보기
union vs. union all [ UNION ] UNION 구문은 첫번째 쿼리의 모든 행을 두번째 쿼리의 모든 행과 더하고, 중복된 행을 제거한 후, 결과를 리턴한다. 다음 예를 보면 첫번째 쿼리에서 EMPLOYEES_ID와 LAST_NAME에서 LAST_NAME 열이 A나 B로 시작하는 직원 레코드를 얻고, 두번째 쿼리에서는 EMPLOYEES_ID와 LAST_NAME 열에서 LAST_NAME이 B나 C로 시작하는 직원 레코드를 얻었다. 쉽게 알 수 있겠지만 B로 시작되는 LAST_NAME 열을 가지는 직원 레코드는 첫번째와 두번째 쿼리 모두에서 선택되며 , 중복되는 행들은 결과셋에서 제외된다. select employee_id, last_name from employees where last_name like 'A%' or last.. 더보기
EAI (Enterprise Application Integration) [ 용어설명 ] 범주 : 정보시스템 통합솔루션 기업에서 운용하는 서로 다른 응용 소프트웨어를 네트워크 프로토콜, 운영체계(OS)와 상관없이 비즈니스 프로세스 차원에서 통합하는 전사적 애플리케이션 통합. 기업과 기업 내부의 다양한 시스템과 애플리케이션을 통합하며, 다양한 애플리케이션간의 관계와 비즈니스 프로세스의 근간을 이루는 트랜잭션 네트워크를 관리해주는 개념이다. 은행의 경우 예금 업무, 대출, 상품 등의 정보를 관리하는 계정계, 영업지원정보와 유동성 관리 업무를 담당하는 정보계, 입금, 출금, 이체 업무를 담당하는 인터넷 뱅킹, 환전, 송금 투자 등의 업무를 맡고 있는 대외계와 이 밖에도 고객 관리를 위한 CRM 등 일반적으로 은행에서는 상당히 복잡하고 다양한 업무가 혼재하고 있다. 하지만 이들 업무.. 더보기
PDM (Product Data Management) [범주] 기업경영솔루션 [용어설명] PDM은 제품의 기획에서 설계, 제조, 인증 및 마케팅 등 제품 개발에 관련되는 모든 데이터를 일원적으로 관리 사용되는 정보시스템이다. 여기에는 관련되는 프로젝트 데이터, 기록 및 문서는 물론, 계획서, 기하학적 모델, CAD도면, 이미지, NC 프로그램 등을 포함한, 각 단계별로 필요한 모든 데이터가 포함된다. PDM은 전체 회사뿐 아니라 작업 그룹들을 위해 개발되었는데, 각 공정에서의 철저한 정보 관리와 정보의 공유에 의한 기업 내 각 부서의 동시 병행 처리의 실현으로, 제품 개발 시간을 단축하고, 제품 개발 작업의 효율성 제고로 비용을 줄이며, 전사적 품질 관리를 통한 제품의 품질 향상을 목적으로 한다. 더보기