상위 50개 Oracle 인터뷰 질문 및 답변(2025)
신입생 및 경력자를 위한 Oracle SQL 인터뷰 질문
Oracle 인터뷰를 준비하는 것은 신입이든 경력자이든 압도적일 수 있습니다. Oracle 인터뷰 질문과 답변에 대한 이 가이드는 성공하는 데 필요한 필수 지식과 기본 개념을 제공합니다. 기본적인 Oracle 인터뷰 질문에서 보다 고급 주제까지, 우리는 여러분의 여정을 지원하는 것을 목표로 합니다. 기술을 날카롭게 하고 다가올 인터뷰에 대한 자신감을 높이기 위해 뛰어드세요. 초보 및 노련한 후보자 모두에게 귀중한 통찰력을 찾을 수 있습니다.
신입생을 위한 Oracle 면접 질문
1) varchar와 varchar2 데이터 유형의 차이점은 무엇입니까?
Varchar는 최대 2000바이트를 저장할 수 있고 varchar2는 최대 4000바이트를 저장할 수 있습니다. Varchar는 NULL 값에 대한 공간을 차지하고 Varchar2는 어떤 공간도 차지하지 않습니다. 둘 다 공간 측면에서 다릅니다.무료 PDF 다운로드: Oracle 인터뷰 질문 및 답변
2) Oracle은 어떤 언어로 개발되었나요?
오라클은 C언어를 사용하여 개발되었습니다.3) RAW 데이터 유형이란 무엇입니까?
RAW 데이터 유형은 값을 이진 데이터 형식으로 저장하는 데 사용됩니다. 테이블에 있는 원시의 최대 크기(32767바이트)입니다.4) NVL 기능의 용도는 무엇입니까?
NVL 함수는 NULL 값을 다른 값이나 주어진 값으로 대체하는 데 사용됩니다. 예는 다음과 같습니다. – NVL(Value, replace value)5) 월 계산에 사용되는 명령이 있습니까? 그렇다면, 그것들은 무엇입니까?
Oracle에서 months_between 함수는 주어진 날짜 사이의 개월 수를 찾는 데 사용됩니다. 예: Months_between(Date 1, Date 2)6) 중첩 테이블이란 무엇입니까?
중첩 테이블은 다중 값 속성이 포함된 열을 지원하는 데 사용되는 Oracle의 데이터 유형입니다. 또한 전체 하위 테이블도 보유합니다.7) COALESCE 기능이란 무엇입니까?
COALESCE 함수는 목록에서 null이 아닌 것으로 설정된 값을 반환하는 데 사용됩니다. 목록의 모든 값이 Null이면 coalesce 함수는 NULL을 반환합니다.Coalesce(value1, value2,value3,…)
8) BLOB 데이터 유형이란 무엇입니까?
BLOB 데이터 유형은 XNUMXGB 메모리를 저장하는 데 사용되는 가변 길이 이진 문자열입니다. BLOB의 길이는 바이트 단위로 지정해야 합니다.9) Oracle에서는 주석을 어떻게 표현합니까?
Oracle의 주석은 두 가지 방법으로 표현될 수 있습니다.- 줄 시작 전 두 개의 대시(–) – 단일 명령문
- /*—— */는 문장 블록에 대한 주석으로 표현하는 데 사용됩니다.
10) DML이란 무엇입니까?
DML(데이터 조작 언어)은 기존 개체의 데이터에 액세스하고 조작하는 데 사용됩니다. DML 문은 삽입, 선택, 업데이트 및 삭제이며 현재 트랜잭션을 암시적으로 커밋하지 않습니다.경험이 풍부한 사람을 위한 Oracle SQL 인터뷰 질문
11) 번역과 교체의 차이점은 무엇입니까?
번역(Translate)은 문자를 문자로 대체하는 데 사용되며 대체(Replace)는 단일 문자를 단어로 대체하는 데 사용됩니다.12) 테이블의 행을 중복 없이 표시하려면 어떻게 해야 합니까?
select 문에서 DISTINCT 키워드를 사용하면 중복된 행을 제거할 수 있습니다.13) Merge 문은 어떤 용도로 사용되나요?
병합 문은 테이블이나 뷰를 업데이트하고 삽입하기 위해 하나 이상의 데이터 원본에서 행을 선택하는 데 사용됩니다. 여러 작업을 결합하는 데 사용됩니다.14) 오라클에서 NULL 값이란 무엇입니까?
NULL 값은 누락되었거나 알 수 없는 데이터를 나타냅니다. 이는 실제 데이터가 없음을 나타내기 위해 자리 표시자로 사용되거나 기본 항목으로 표시됩니다.15) USING 절이 무엇이고 예를 들어주세요.
USING 절은 두 테이블을 조인할 때 동일성을 테스트할 열을 지정하는 데 사용됩니다. [sql]Select * from employee join 봉급 직원 ID를 사용하여[/sql] 직원 테이블은 직원 ID를 사용하여 급여 테이블과 조인됩니다.16) 키 보존 테이블이란 무엇입니까?
테이블의 모든 키가 조인 결과의 키가 될 수도 있는 경우 테이블은 키 보존 테이블로 설정됩니다. 기본 테이블에서 각 행의 복사본 하나만 반환하도록 보장합니다.17) WITH CHECK 옵션이 무엇인가요?
WITH CHECK 옵션 절은 DML 문에서 수행할 검사 수준을 지정합니다. 하위 쿼리에 포함되지 않은 결과를 생성하는 뷰에 대한 변경을 방지하는 데 사용됩니다.18) Oracle에서 Aggregate 함수의 용도는 무엇입니까?
집계 함수는 여러 행이나 레코드의 값을 결합하여 단일 값 출력을 얻는 함수입니다. 일반적인 집계 함수는 다음과 같습니다.- 평균
- 카운트
- 합계
19) GROUP BY 절은 무엇을 의미합니까?
GROUP BY 절은 여러 레코드에 걸쳐 데이터를 수집하고 결과를 하나 이상의 열로 그룹화하는 select 문에서 사용할 수 있습니다.20) 하위 쿼리란 무엇이며 다양한 유형의 하위 쿼리는 무엇입니까?
하위 쿼리는 중첩 쿼리 또는 내부 쿼리라고도 하며 여러 테이블에서 데이터를 가져오는 데 사용됩니다. 하위 쿼리는 주 쿼리의 where 절에 추가됩니다. 두 가지 유형의 하위 쿼리가 있습니다.- 상관 하위 쿼리
- 상관되지 않은 하위 쿼리
경험이 풍부한 사람을 위한 고급 기계 공학 면접 질문
21) 교차 조인이란 무엇입니까?
교차 조인은 조인에 있는 테이블의 레코드에 대한 데카르트 곱으로 정의됩니다. Cross Join은 첫 번째 테이블의 각 행과 두 번째 테이블의 각 행을 결합하는 결과를 생성합니다.22) Oracle의 임시 데이터 유형은 무엇입니까?
Oracle은 다음과 같은 임시 데이터 유형을 제공합니다.- 날짜 데이터 유형 – 다양한 날짜 형식
- 타임스탬프 데이터 유형 - 타임스탬프의 다양한 형식
- 간격 데이터 유형 – 날짜와 시간 사이의 간격
23) Oracle에서 권한을 어떻게 생성합니까?
특권은 단지 어떤 일을 실행할 수 있는 권리일 뿐입니다. SQL 쿼리하거나 다른 사용자 개체에 액세스합니다. 권한은 시스템 권한 또는 사용자 권한으로 부여될 수 있습니다.[sql]GRANT user1 TO user2 WITH MANAGER OPTION;[/sql]
24) VArray란 무엇입니까?
VArray는 다중값 속성을 포함하는 열을 갖는 데 사용되는 oracle 데이터 유형이며 제한된 값 배열을 보유할 수 있습니다.25) 테이블의 필드 세부정보를 어떻게 얻나요?
설명하다 지정된 테이블의 필드 세부 정보를 가져오는 데 사용됩니다.26) 이름 바꾸기와 별칭의 차이점은 무엇입니까?
이름 바꾸기는 테이블이나 열에 부여되는 영구적인 이름인 반면, 별칭은 테이블이나 열에 부여되는 임시 이름입니다. 이름 바꾸기는 이름을 바꾸는 것에 불과하며 별칭은 테이블이나 열의 대체 이름입니다.27) 뷰란 무엇입니까?
뷰는 하나 이상의 테이블이나 뷰를 기반으로 하는 논리적 테이블입니다. 뷰의 기반이 되는 테이블을 기본 테이블이라고 하며 여기에는 데이터가 포함되어 있지 않습니다.28) 커서변수란 무엇인가요?
커서 변수는 런타임에 다른 값을 보유할 수 있는 다른 문과 연결됩니다. 커서 변수는 일종의 참조 유형입니다.29) 커서 속성이란 무엇입니까?
Oracle의 각 커서에는 응용 프로그램이 커서 상태를 테스트할 수 있도록 하는 속성 세트가 있습니다. 속성을 사용하여 커서가 열렸는지 닫혔는지, 찾았는지 여부를 확인하고 행 수를 찾을 수도 있습니다.30) SET 연산자란 무엇입니까?
SET 연산자는 둘 이상의 쿼리에 사용되며 해당 연산자는 Union, Union All, Intersect 및 Minus입니다.5년 경험을 위한 Oracle 인터뷰 질문
31) 테이블에서 중복된 행을 어떻게 삭제할 수 있나요?
테이블의 중복 행은 ROWID를 사용하여 삭제할 수 있습니다.32) 커서의 속성은 무엇입니까?
커서의 속성은 다음과 같습니다.- %녹이다
- %찾을 수 없음
- % ISOPEN
- % ROWCOUNT %
33) 데이터베이스에 사진을 저장할 수 있나요? 그렇다면 어떻게 할 수 있나요?
예, Long Raw Data 유형으로 데이터베이스에 사진을 저장할 수 있습니다. 이 데이터 유형은 2GB 길이의 이진 데이터를 저장하는 데 사용됩니다. 그러나 테이블은 Long Raw 데이터 유형만 가질 수 있습니다.34) 무결성 제약조건이란 무엇입니까?
무결성 제약 조건은 테이블 열에 대한 비즈니스 규칙을 정의한 선언입니다. 무결성 제약 조건은 데이터베이스에 있는 데이터의 정확성과 일관성을 보장하는 데 사용됩니다. 도메인 무결성, 참조 무결성 및 도메인 무결성의 유형이 있습니다.35) ALERT란 무엇입니까?
경고는 현재 디스플레이의 일부와 겹쳐서 화면 중앙에 나타나는 창입니다.36) 해시 클러스터란 무엇입니까?
해시 클러스터는 더 빠른 검색을 위해 테이블을 저장하는 데 사용되는 기술입니다. 테이블에 해시 값을 적용하여 테이블에서 행을 검색합니다.37) Oracle에서 사용되는 다양한 제약사항은 무엇입니까?
사용되는 제약 조건은 다음과 같습니다.- NULL - 특정 열에 NULL 값이 포함될 수 있음을 나타냅니다.
- NOT NULL – 특정 열에 NULL 값이 포함될 수 없음을 나타냅니다.
- CHECK – 주어진 열의 값이 특정 기준을 충족하는지 확인합니다.
- DEFAULT - 기본값에 해당 값이 할당되었음을 나타냅니다.
38) SUBSTR과 INSTR의 차이점은 무엇인가요?
SUBSTR은 문자열의 특정 부분을 반환하고 INSTR은 문자열에서 패턴이 발견된 문자 위치를 제공합니다. SUBSTR은 문자열을 반환하는 반면 INSTR은 숫자를 반환합니다.39) 프로시저에 전달할 수 있는 매개변수 모드는 무엇입니까?
IN, OUT, INOUT은 프로시저에 전달할 수 있는 매개변수의 모드입니다.40) 다양한 Oracle Database 객체는 무엇입니까?
Oracle에는 다양한 데이터 개체가 있습니다.- 테이블 – 수직 및 수평으로 구성된 요소 집합
- 뷰 – 하나 이상의 테이블에서 파생된 가상 테이블
- 인덱스 - 레코드 처리를 위한 성능 튜닝 방법
- 동의어 – 테이블의 별칭 이름
- 시퀀스 – 여러 사용자가 고유 번호를 생성합니다.
- 테이블스페이스 – Oracle의 논리적 저장 장치
10년 경험을 위한 Oracle 인터뷰 질문
41) LOV와 목록 항목의 차이점은 무엇입니까?
LOV는 속성인 반면 목록 항목은 단일 항목으로 간주됩니다. 항목 목록은 항목 목록 모음으로 설정됩니다. 목록 항목에는 하나의 열만 있을 수 있고 LOV에는 하나 이상의 열이 있을 수 있습니다.42) 특권과 보조금이란 무엇입니까?
권한은 SQL 문을 실행할 수 있는 권한입니다. 즉, 연결하고 연결할 수 있는 권한을 의미합니다. 그에 따라 개체에 액세스할 수 있도록 개체에 권한이 부여됩니다. 부여는 개체의 소유자 또는 작성자가 제공할 수 있습니다.43) $ORACLE_BASE와 $ORACLE_HOME의 차이점은 무엇입니까?
Oracle Base는 Oracle의 기본 또는 루트 디렉터리인 반면 ORACLE_HOME은 모든 Oracle 제품이 있는 기본 폴더 아래에 있습니다.44) 테이블에서 데이터를 가져오는 가장 빠른 쿼리 방법은 무엇입니까?
ROWID를 사용하여 테이블에서 행을 가져올 수 있습니다. ROW ID를 사용하는 것은 테이블에서 데이터를 가져오는 가장 빠른 쿼리 방법입니다.45) 단일 테이블에 적용할 수 있는 최대 트리거 수는 몇 개입니까?
단일 테이블에 적용할 수 있는 최대 트리거 수는 12개입니다.46) 레코드에 행 번호를 표시하는 방법은 무엇입니까?
레코드 번호와 함께 행 번호 표시 –Select rownum, <fieldnames> from table;이 쿼리는 지정된 테이블의 행 번호와 필드 값을 표시합니다.
47) 테이블에 추가된 마지막 기록을 어떻게 볼 수 있나요?
마지막 레코드를 테이블에 추가할 수 있으며 다음을 수행할 수 있습니다.Select * from (select * from employees order by rownum desc) where rownum<2;
48) DUAL 테이블의 데이터 타입은 무엇인가요?
The DUAL 테이블은 Oracle 데이터베이스에 있는 2열 테이블입니다. 테이블에는 'X' 값을 갖는 DUMMY라는 단일 VARCHAR1(XNUMX) 열이 있습니다.49) 데카르트 조인과 크로스 조인의 차이점은 무엇입니까?
조인 간에는 차이가 없습니다. 데카르트 조인과 크로스 조인은 동일합니다. 크로스 조인은 두 테이블의 데카르트 곱을 제공합니다. 첫 번째 테이블의 행을 다른 테이블과 곱하는데, 이를 데카르트 곱이라고 합니다. where 절이 없는 크로스 조인은 데카르트 곱을 제공합니다.50) 부서 평균연봉보다 많은 연봉을 받는 사원의 기록을 어떻게 조회하나요?
이는 다음 쿼리로 수행할 수 있습니다.Select * from employee where salary>(select avg(salary) from dept, employee where dept.deptno = employee.deptno);
결론
Oracle 면접 질문과 답변을 마스터하는 것은 신입이든 경력자이든 성공에 필수적입니다. 이러한 질문을 연습하면 자신감을 키우고 기술을 연마할 수 있습니다. 댓글에 독특하거나 도전적인 질문을 자유롭게 공유하세요. 철저히 준비하고 면접에서 행운을 빕니다! 이러한 면접 질문은 구두 시험에도 도움이 될 것입니다.
– 3GB(file_a.txt), 1GB(file_b.txt), 10TB(file_c.txt) 등 1개의 큰 파일이 있습니다.
– 이 3개 파일의 형식: 파일의 각 줄에는 임의의 문자열이 있습니다.
– 사용할 수 있는 메모리는 100MB이며 디스크 사용량은 제한되지 않습니다.
- 추정:
IF AND ONLY IF 문자열 A가 3개 파일 모두에 나타나는 경우 이 A가 나타나는 총 횟수를 계산해야 합니다. 예를 들어 A는 file_a.txt 내에서 2번 나타나고, file_b.txt 내에서는 10번 나타나고, file_c 내에서는 100번 나타납니다. txt를 입력하면 A의 총 나타나는 횟수는 2 + 10 + 100 = 112번으로 계산됩니다.
질문: TOP 10과 LAST 10이 나타나는 횟수가 내림차순으로 문자열을 출력하는 프로그램을 작성해 주세요. 누구든지 대답해주세요.
나쁜 질문입니다. 이해할 수 없습니다.
섹션 XNUMX – 시나리오
스키마 이름: IssuesTracking
문제 설명:
이슈 추적 소프트웨어를 위한 데이터베이스를 설계하고 구현해야 합니다. 소프트웨어 문제 추적은 모든 엔터프라이즈 소프트웨어 개발 수명주기의 필수적인 부분입니다. 그만큼
이슈 추적 툴킷은 이슈(예: 소프트웨어
버그 또는 새로운 기능에 대한 요청). 각 문제는 해당 문제를 포착해야 하는 티켓으로 표시됩니다.
다음 정보
• 실제 문제
• 문제의 영향을 받는 구성 요소 또는 프로젝트
• 문제를 처음으로 확인한 개발자/고객
• 문제 해결을 담당하는 개발자/관리자
• 문제의 상태
• 기타 관련 문제(티켓)
세부 요구사항:
여기서는 엔터프라이즈 변경 관리 툴킷에 대한 최소 요구 사항을 간략하게 설명합니다. 당신은
귀하가 생각하는 대로 요구 사항을 수정, 추가 및 (분명히 정당한 경우) 제거하도록 권장됩니다.
필요한. 티켓 – 가능한 속성: 소유자, 제목, 설명, 상태(예: 공개, 평가, 작업 중,
테스트, 연기됨, 거부됨, 종료됨 등), 우선순위(예: 낮음, 중간, 높음, 긴급), 계획됨
완료 날짜, 하나 이상의 관련 프로젝트, 하나 이상의 관련 티켓, 카테고리(작업,
기능, 질문, 결함, 마일스톤), 마일스톤 상태, 제출자, 제출 날짜, 에스컬레이션
사람, 블로그 항목(티켓 토론 포럼), 관련 리소스 및 관련 아티팩트(예: 문제 해결에 도움이 되는 다이어그램 및 문서), 작업 기록(작업한 시간)
매일, 각 사용자마다 다를 수 있음)
3
프로젝트 – 가능한 속성: 제목, 설명, 계획된 완료 날짜, 실제 완료 날짜, 프로젝트 관리자, 작성자, 생성 날짜, 작업 로그(매일 작업한 시간 수)
매일, 사용자마다 다를 수 있음)
사용자 – 가능한 속성: 이름, 직위(예: 개발자, 관리자, 시스템 관리자), 보안(사용자 이름
및 비밀번호)
아티팩트 – 가능한 속성: 제목, 설명, 카테고리, 버전, 크기, 데이터
댓글 – 가능한 속성: 티켓, 제출자, 제출자 날짜, 텍스트 -학생으로서의 역할
이 연습의 목표는 데이터베이스 설계자로서 실무 경험을 제공하고
관리자. 스크립트를 준비하고 문서화하세요. 실제로 SQL Developer와 같은 도구를 사용할 수도 있습니다.
데이터베이스 설계를 구현하기 위해. 적절한 경우 예를 사용하십시오.
4
섹션 XNUMX – 질문
모든 질문은 필수입니다. 모든 질문에 순차적으로 답변하십시오. 각 항목을 표시하는지 확인하세요.
질문하고 답변을 따르세요. 필요한 경우 구문과 예제를 사용하십시오. 시나리오를 바탕으로 답변을 도출해야 합니다. 질문 끝에 있는 숫자
만점을 표시합니다. 질문:
1. 사용자 스키마(IssueTracking)를 생성하고 모든 객체에 권한을 부여합니다. [5]
2. 주어진 시나리오를 나타내야 하는 가능한 DB 테이블을 Oracle에서 생성합니다. [10]
3. 테이블 간의 관계를 정의하고 설명한다 [10]
4. 적절한 테이블 구조를 정의합니다(예: 날짜 열은 날짜 필드, 금액 데이터 입력 가능)
숫자 데이터 필드여야 함) [10]
5. DB의 객체보안과 시스템보안에 대해 설명해보세요. DBReader 및 DBWriter 생성
사용자, DBWriter 사용자는 DDL 및 DML 명령 실행에 대한 액세스 권한을 가져야 하며, DBReader 사용자는 모든 테이블에 대한 읽기 권한만 액세스할 수 있습니다. [4+4+2+6+4]
6. 잠금 장치란 무엇입니까? 왜 필요한가요? 공유 잠금 시연 및
어느 하나의 테이블에 대한 배타적 잠금 상황 [2+4+6+6]
7. 교착상태(Deadlock)란 무엇이며, DB 시스템에서 교착상태를 어떻게 관리하나요? 만들기
'티켓' 테이블의 교착 상태입니다. [5+10]
8. ABC Inc. 시스템 장애로 인해 지난주 사업 데이터가 손실되었으며, 사업주
사업상 아무것도 잃고 싶지 않습니다. 일반적으로 DBA는 매일 백업을 수행합니다.
하루의 끝. 귀하는 ABC Inc.의 DBA입니다. 해당 주의 데이터를 어떻게 관리하고,
앞으로 가장 좋은 방법은 무엇입니까? [10]
당신이 나를 도와 드릴까요?
좋은 질문…
너무 어렵지는 않습니다.
문자열이 문자열에 없으면 다른 파일에 있는지 여부는 신경 쓰지 않기 때문에 가장 작은 파일을 반복합니다.
내 데이터 구조의 경우 가장 작은 파일의 각 줄에 대한 줄이 있는 목록을 유지하고 이 줄에 내 개수를 기록합니다. 파일에 한 줄이 여러 번 존재하는 경우 후속 발생을 XNUMX으로 계산하거나 X로 표시하여 두 번 계산하지 않도록 할 수 있습니다.
그런 다음 이 파일을 읽고 상위 10개 항목이 포함된 배열을 로드하고 이 배열에 첫 번째 인덱스와 개수를 넣습니다.
그런 다음 색인을 사용하여 파일로 이동하여 실제 줄을 읽고 개수와 함께 표시합니다.
그런 다음 LAST 10에 대해 유사한 프로세스를 수행하면 훨씬 더 쉬울 것입니다.
영어로 말하는 대신 스크립트를 작성할 수 있나요?
감사!!
감사합니다
Oracle DB에 대한 지식을 정리할 수 있는 기회를 주셔서 진심으로 감사드립니다.
50번 답에 오류가 있습니다.
주어진 것은 이것이다
급여가 있는 직원에서 *를 선택>(부서에서 평균(급여) 선택, dept.deptno = 직원.deptno인 직원;
오류는 마지막 괄호가 제공되지 않는다는 것입니다.
안녕하세요. 작성해주셔서 감사합니다. 검토되고 업데이트됩니다.
이것은 완전한 지식 팩 교육 훈련입니다
Select는 DML 명령이 아니라 DRL 명령입니다. 위의 Q10을 참고해주세요.
응 다모다르 넌 ri8이야
안녕,
질문 47번. 테이블의 마지막 기록을 얻으려면
*에서 선택(직원 ID별로 직원 순서에서 * 선택), 여기서 rownum<=1;
위 쿼리 대신 아래 쿼리를 사용할 수 있습니다.
rownum<=1 order by Employee_id desc인 직원 중에서 *를 선택합니다.
감사합니다,
Ank
우리는 사용할 수 없습니다. order by 절은 결과 집합이 처리된 후 SQL 엔진에 의해 처리되므로 쿼리가 테이블의 첫 번째 레코드를 가져옵니다.
SQL 개발자
좋은 질문
45. 단일 테이블에 적용할 수 있는 최대 트리거 수는 몇 개입니까?
정답:
테이블에 N개의 트리거를 가질 수 있지만 단일 테이블의 최대 트리거 유형은 3*2*2=12일 수 있습니다. 즉 분할은 다음과 같이 수행됩니다.
삽입/업데이트/삭제= 3
전/후= 2
행 수준/문 수준=2
선택 쿼리가 한 테이블의 6 lakhs 레코드 중 10 lakhs 레코드를 반환하면 최적화 프로그램은 INDEX 스캔 또는 전체 테이블 스캔을 사용합니다. 인덱스가 언제 실패하고 테이블에서 레코드를 가져오는 INDEX 최대 비율은 얼마입니까?
감사
인터뷰 질문으로 도움을 주셔서 감사합니다.