공부66 [중첩루프조인] 오라클 조인 Nested Loop Join Nested Loop Join 두 개 이상의 테이블 구조에서 하나의 테이블(Driving/Outer Table)을 기준으로, 순차적으로 (Driven/Inner Table)의 Row 를 조인하여 원하는 데이터를 추출하는 방식의 조인. 추출되는 Row 가 많아질 수록 성능이 현저히 떨어지고, 성능을 높이기 위해서는 Driving Table 의 크기가 작을수록 유리. Inner Table 은 조인되는 컬럼으로 인덱스가 구성되어 있어야 함. 선행(드라이빙) 테이블의 크기 NL 조인은 흔히 loop 문에 비교한다. for(int i = 0 ; i < A.length; i++) { // 선행테이블 for(int j = 0; j < B.length; j++) { // 후행테이블 } } 위 for 문을 예로 들어보면.. 2019. 12. 2. 오라클 튜닝 2019.09.22 [튜닝공부] 1. 내부적 형변환 만일, 인덱스에 포함되어 있는 컬럼을 조건에 걸어줬는데도 full scan 을 하는 경우가 있다면, 인덱스의 컬럼 데이터 형 또한 고려해주어야 한다. 인덱스 컬럼이 varchar 형인데 불구하고, 숫자로 조건을 걸어주었다면 이를 위해 컬럼의 값을 숫자로 형변환한다. 따라서, 인덱스가 걸리지 않고 full scan 을 타는 경우가 존재한다고 한다. 출처 : 구루비 http://www.gurubee.net/lecture/2122 데이터타입 불일치 예제 튜닝 전 첫 번째 예제는 데이터타입이 틀릴 경우 인덱스를 사용하지 못하는 내용이다. 아래의 내용을 보면, EMP 테이블에 EMPNO_VARCHAR 컬럼으로.. www.gurubee.net 2. 외부적 형변환 .. 2019. 9. 22. 백준1038_감소하는 수 문제음이 아닌 정수 X의 자릿수가 가장 큰 자릿수부터 작은 자릿수까지 감소한다면, 그 수를 감소하는 수라고 한다. 예를 들어, 321과 950은 감소하는 수지만, 322와 958은 아니다. N번째 감소하는 수를 출력하는 프로그램을 작성하시오. 0은 0번째 감소하는 수이고, 1은 1번째 감소하는 수이다. 만약 N번째 감소하는 수가 없다면 -1을 출력한다.입력첫째 줄에 N이 주어진다. N은 1,000,000보다 작거나 같은 자연수 또는 0이다.출력첫째 줄에 N번째 감소하는 수를 출력한다.예제 입력 복사18예제 출력 복사42 [코드] 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354.. 2017. 7. 14. 백준3048_개미 문제개미가 일렬로 이동할 때, 가장 앞의 개미를 제외한 나머지 개미는 모두 앞에 개미가 한 마리씩 있다. 서로 반대 방향으로 이동하던 두 개미 그룹이 좁은 길에서 만났을 때, 개미는 어떻게 지나갈까?최근 연구에 의하면 위와 같은 상황이 벌어지면 개미는 서로를 점프해서 넘어간다고 한다.즉, 두 그룹이 만났을 때, 1초에 한번씩 개미는 서로를 뛰어 넘는다. (한 개미가 다른 개미를 뛰어 넘고, 다른 개미는 그냥 전진한다고 생각해도 된다)하지만 모든 개미가 점프를 하는 것은 아니다. 자신의 앞에 반대 방향으로 움직이던 개미가 있는 경우에만 점프를 하게 된다.첫 번째 그룹이 ABC로 움직이고, 두 번째 그룹의 개미가 DEF순으로 움직인다고 하자. 그럼, 좁은 길에서 만났을 때, 개미의 순서는 CBADEF가 된다.. 2017. 7. 14. 백준1697_숨바꼭질 문제수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 걷는다면 1초 후에 X-1 또는 X+1로 이동하게 된다. 순간이동을 하는 경우에는 1초 후에 2*X의 위치로 이동하게 된다.수빈이와 동생의 위치가 주어졌을 때, 수빈이가 동생을 찾을 수 있는 가장 빠른 시간이 몇 초 후인지 구하는 프로그램을 작성하시오. 입력첫 번째 줄에 수빈이가 있는 위치 N과 동생이 있는 위치 K가 주어진다.출력수빈이가 동생을 찾는 가장 빠른 시간을 출력한다.예제 입력 복사5 17예제 출력 복사4 [코드] 12345678910111213141516171819.. 2017. 4. 12. 백준9328_열쇠 문제상근이는 1층 빌딩에 침입해 매우 중요한 문서를 훔쳐오려고 한다. 상근이가 가지고 있는 평면도에는 문서의 위치가 모두 나타나 있다. 빌딩의 문은 모두 잠겨있기 때문에, 문을 열려면 열쇠가 필요하다. 상근이는 일부 열쇠를 이미 가지고 있고, 일부 열쇠는 빌딩의 바닥에 놓여져 있다.상근이가 훔칠 수 있는 문서의 최대 개수를 구하는 프로그램을 작성하시오.입력첫째 줄에 테스트 케이스의 개수가 주어진다. 테스트 케이스의 수는 100개를 넘지 않는다.각 테스트 케이스의 첫째 줄에는 지도의 높이와 너비 h와 w (2 ≤ h, w ≤ 100)가 주어진다. 다음 h개 줄에는 빌딩을 나타내는 w개의 문자가 주어지며, 각 문자는 다음 중 하나이다.'.'는 빈 공간을 나타낸다.'*'는 벽을 나타내며, 상근이는 벽을 통과할.. 2017. 4. 11. 이전 1 ··· 4 5 6 7 8 9 10 11 다음