반응형 전체 글211 SUBQUERY 종류 in Oracle 1. scalar subquery( 스칼라 서브 쿼리) 스칼라 서브쿼리는 SELECT 절에 들어가며 단일 칼럼, 단일 행을 반환해야 합니다. 쿼리를 잘못 작성하여 2개 이상의 행이 반환되면 "ORA-01427 : 단일 행 하위 질의에 2개 이상의 행이 리턴되었습니다" 라는 오류가 발생하며 사용법 예시는 다음과 같습니다. Select a.empNo, a.name, a.deptNo, (select b.deptName from dept b where b.deptNo = a.deptNo) as deptName from emp a where a.empNo = 10 2. inline view( 인라인 뷰 ) 인라인 뷰는 FROM 절에 들어가는 서브쿼리이며 사용적인 측면에서 View 테이블과 동일합니다. Select.. 2023. 11. 8. CLOB데이터 글자 수 조회하기 in Oracle CLOB데이터 글자 수 조회하기 in Oracle 오라클에서 CLOB에 .length등의 함수를 사용하면 에러가 발생합니다. CLOB 형식의 컬럼 데이터의 길이를 구하거나 문자열을 자르려면 DBMS_LOB.GETLENGTH, DBMS_LOB.SUBSTR을 사용하여야하며 사용방법은 아래와 같습니다. - 주의사항 컬럼의 형식이 CLOB 이어야합니다. SELECT DBMS_LOB.SUBSTR(CLOB형 컬럼명, 자를 문자열 길이, OFFSET) AS "CLOB_SUBSTR" -- 문자열 자르기 DBMS_LOB.GETLENGTH(CLOB형 컬럼명) AS "CLOB_LENGTH" , -- 문자열 FROM 테이블이름 2023. 11. 8. Commit, Rollback, Savepoint Commit, Rollback, Savepoint 에 대하여 알아봅시다. 기본적인 정의 및 사용법은 아래와 같습니다. Commit - 현재 상태로 저장(되돌릴수없음). Rollback - Delete나 Update후 Commit을 안했다면 되돌릴수있음. 가장 최근 Commit 및 Savepoint로 돌아감. Savepoint - Rollback 할 수 있도록 위치를 정해놓음. ------------------------------------------------Commit 후 이전 데이터 확인 하는법. -------------------------------------------- 디비 작업중 실수로 커밋한 경우에 이전 데이터를 확인하려면, timestamp를 사용할 수 있습니다. 오라클은 UNDO ta.. 2023. 11. 8. BOOLEAN의 표현 in Oracle Oracle DB에서 BOOLEAN을 표현하려면?? 오라클에는 Boolean 자료형이 따로 존재하지않기때문에, True,False는 "1","0"을 이용하여 CHAR(1)타입으로 저장하는게 일반적입니다. 2023. 11. 8. JOIN할때 ON과 WHERE 중 어디에 조건을 줘야 효과적일까? _Oracle Oracle 쿼리를 다루는 사람이라면 한번쯤 "JOIN할때 ON과 WHERE 중 어디에 조건을 줘야 효과적일까?" 에 대한 생각을 해보았을 것이다. ANSI 표준에 따라서는 조인 조건을 ON절에 달아주고, WHERE절에는 검색조건을 달게 됩니다. ON 절에 검색조건을 달아도 쿼리 실행에는 영향이 없으나, ON절에 조건을 주면 Join으로 인하여 테이블을 합칠 때 조건이 걸려서 하나의 가상테이블이 만들어집니다. 그와 반대로 WHERE절에 조건이 걸리면, 다 만들어진 테이블을 다시 훑으면서 해당 조건에 맞는 결과물을 반환하는 게 되기에 두번 일하는 것처럼 동작합니다. 결과적으로 ON절에 거는게 더 효과적이라고 볼 수 있습니다. 2023. 11. 8. ORA-04031 in Oracle Error 오라클에서 발생하는 에러 중 ORA-04031는 Shared Pool 내에 메모리가 단편화됨에 따라 연속된 parsing 공간을 제공하지 못해 발생하는 에러입니다. shared pool 사이즈 조회는 아래와 같은 쿼리로 가능합니다. - select * from v$sga_dynamic_components - 원인 1. Shared Pool Fragmentation (Shared Pool 과도한 조각화) - 과도한 조각화를 방지하기 위해서는 Literal SQL > Bind Variable SQL로 바꿔주는 작업이 가장 좋은 방법입니다. 하드코딩으로 박힌 SQL은 각각 마다 Shared Pool을 잡아 먹습니다. 하지만 Bind Variable SQL은 한 번 Shared Pool에 올라가서 Bind만 되.. 2023. 11. 8. 이전 1 ··· 29 30 31 32 33 34 35 36 다음 반응형