본문 바로가기

oracle9

[ORACLE] LATERAL 조인 함수 / OUTER APPLY 조인 함수 설명에 들어가기에 앞서 기본 JOIN문을 모르시는 분은 앞 문서부터 읽어보시길 바랍니다. 2023.01.30 - [Web Programming/DB] - [ORACLE] 조인 쿼리(join query), 조인 종류, 조인 쿼리 예시 LATERAL 조인을 사용하는 경우는 A, B, C 테이블이 있다고 가정해봅시다. A가 드라이빙테이블(메인테이블)이라고 생각해봅시다. A와 B는 PK값으로 조인이 잘 이루어 집니다. 그러나 A와 C는 조인을 할 PK값이 없다고 가정합니다. (B와 C는 조인이 가능합니다.) SELECT A.NAME , B.SCHOOL , C.SCHOOL_MONEY FROM NN A , SC B , LATERAL ( SELECT SCHOOL_MONEY FROM SM WHERE SCHOOL = B.. 2023. 2. 15.
[ORACLE] JSON 파싱(Parsing)하기 (조회하기) {"name":"ORACLE","name2":"NAVER"} 이러한 JSON 형식이 있다고 가정해봅시다. ORACLE과 NAVER를 조회하려합니다. SELECT JSON_VALUE(테이블.컬럼, '$.name') AS NAME , JSON_VALUE(테이블.컬럼, '$.name2') AS NAME2 FROM 테이블명 WHERE 1=1 AND ~~ NAME NAME2 1 ORACLE NAVER 2 ... ... ...은 JSON데이터가 더 있다면 더 나온다는 소리입니다. 아무튼 JSON Parsing은 위 코드대로 하시면 됩니다. 2023. 2. 14.
[ORACLE] 조인 쿼리(join query), 조인 종류, 조인 쿼리 예시 JOIN의 종류는 4가지입니다. 1. INNER JOIN 2. LEFT OUTER JOIN 3. RIGHT OUTER JOIN 4. FULL OUTER JOIN 1. INNER JOIN INNER JOIN은 교집합 연산자 입니다. 사용법 예시입니다. SELECT * FROM table A INNER JOIN table B ON A.조인키컬럼 = B.조인키컬럼 ; -- INNER은 생략하실 수 있습니다. 이렇게 사용하실 수도 있고, SELECT * FROM table A , table B WHERE A.조인키컬럼 = B.조인키컬럼 AND ~~ ; 이렇게 사용하실 수도 있습니다 다만 위의 방법보단 아래의 방법이 더 많이 쓰입니다. 2. LEFT OUTER JOIN LEFT OUTER JOIN은 A전체와 A,.. 2023. 1. 30.
[Oracle] 오라클 계층구조(트리구조)로 조회하기 (level, start with...connect by prior, order siblings by) 수행순서는 다음과 같습니다 1. START WITH 절에서 시작할 조건 탐색 - 트리구조 최상단에 들어갈 컬럼을 START WITH절에다가 넣으면 됩니다. 2. CONNECT BY 절에서 연결조건 탐색 - 자식 = 부모 or 부모 = 자식 차이는 자식 -> 부모로 방향을 잡느냐, 부모 -> 자식으로 방향을 잡느냐 입니다. 보통 자식 = 부모로 쓰입니다. 예를 들기 전에 PRIOR 은 상위 행을 참조하는 것으로 쉽게 설명하자면 부서별로, 팀별로 찾는 것입니다. 사용법은 아래와 같습니다. SELECT LEVEL , a , b , c FROM table WHERE 1=1 START WITH a = '*' CONNECT BY PRIOR b = a ORDER SIBLINGS BY c ; SIBLINGS 는 부모자.. 2023. 1. 25.