본문 바로가기
728x90

Be Smart/SQL55

오라클 PL/SQL 예외 처리: 오류 발생 시 프로그램 비정상 종료 방지 방법 오라클에서 SQL 또는 PL/SQL이 정상적으로 수행되지 못하는 상황을 '오류'라고 합니다. 오류는 크게 두 가지로 나뉩니다:컴파일 오류: 문법 오류 또는 오타로 인해 발생하는 오류입니다.런타임 오류: 프로그램 실행 중 발생하는 오류로, 오라클에서는 이를 '예외(exception)'라고 합니다.예외가 발생하는 PL/SQL 예제다음 예제는 문자열 데이터를 숫자 자료형 변수에 대입하려고 시도하는 코드입니다. 이로 인해 런타임 오류가 발생하고 프로그램이 비정상 종료됩니다.DECLARE v_wrong NUMBER;BEGIN SELECT DNAME INTO v_wrong FROM DEPT WHERE DEPTNO = 10;END;/예외 처리예외 처리는 PL/SQL 실행 중 예외가 발생했을 때 프.. 2024. 6. 13.
[Oracle] HackerRank 문제 정리 - 6 15 Days of Learing SQL 테이블: Hackers: Submissions: Sample Input: Hackers Table Submissions Table Sample Output: 2016-03-01 4 20703 Angela 2016-03-02 2 79722 Michael 2016-03-03 2 20703 Angela 2016-03-04 2 20703 Angela 2016-03-05 1 36396 Frank 2016-03-06 1 20703 Angela 조건: Julia는 SQL을 배우는 날들을 진행했습니다. 대회 시작일은 2016년 3월 1일, 종료일은 2016년 3월 15일이다. 매일 최소 제출자 수를 출력하는 쿼리를 작성하고(대회 첫날부터), 매일 최대 제출자 수를 기록한 해커의.. 2022. 8. 10.
[오라클] 그룹함수 over, partition by 분석함수란? SELECT 분석함수 OVER([PARTITION BY 칼럼] [ORDER BY 칼럼] [WINDOWING 절]) FROM 테이블; 분석함수는 이미 사용해보셨을 겁니다. COUNT(), AVG(), SUM() 등과 같이 GROUP BY 절과 함께 사용했던 함수들도 있고, RANK(), ROW_NUMBER(), DENSE_RANK(), LEAD(), LAG(), NTITLE() 등 ORACLE 버전이 올라가면서 많이 생겨나고 있습니다. 이런 분석함수 뒤에 ANALYTIC CLAUSE( OVER 절 ) 을 통해서 행 그룹의 정의를 지정하고 각 그룹당 결과값을 반복하여 출력하는 것 입니다. 여기서 행 그룹은 칼럼에 대한 행 들이고 행 그룹의 범위 (WINDOW)를 PARTITION BY, ORDE.. 2022. 8. 10.
[Oracle] 고급 쿼리, 계층형 쿼리 (START WITH, CONNECT BY PRIOR, ORDER SIBLINGS BY) [개념 정리] 계층형 쿼리 : 부모, 자식 간의 수직관계를 트리 구조 형태로 보여주는 쿼리 START WITH : 트리 구조의 최상위 행을 지정합니다. CONNECT BY : 부모, 자식의 관계를 지정합니다. PRIOR : CONNECT BY 절에 사용되며 PRIOR에 지정된 컬럼이 맞은편 컬럼을 찾아갑니다. CONNECT BY PRIOR 자식 칼럼 = 부모 칼럼 : 부모 -> 자식 순방향 전개 CONNECT BY PRIOR 부모 칼럼 = 자식 칼럼 : 자식 -> 부모 역방향 전개 ORDER SIBLINGS : 계층형 쿼리에서 정렬을 수행합니다. [부모 -> 자식 순방향 전개 계층형 쿼리 예제] select parent_c as p, child_c as c, level from t1 start with .. 2022. 8. 10.
728x90