본문 바로가기
728x90
반응형

배우기/복습노트[oracle sql]70

[복습] SQL | Oracle 행의 순서 출력 ROWNUM과 FETCH + 복습후기(20231120) ROWNUM 먼저 살펴보자. 이렇게 출력해서 나오는 세 개의 행은 데이터가 입력된 순서의 행이다. ORDER BY로 EMPNO대로 정렬해도 위와같이 나온다. 이렇게 추출된 세 데이터 내에서 이름 순으로 정렬될 뿐 BLAKE라는 사원은 나오지 않는다. 참고로 ROWNUM = 3으로 하여 세 번째 행을 추출할 수도 없다. 데이터는 SELECT 절에서 출력할 때 임시번호가 붙여지는 것이지 실제로 WHERE 절에서는 3번 줄이라는 것을 알 수가 없다. 이게 ROWNUM의 단점이다. 서브쿼리가 들어가는 경우 정렬 순서대로 데이터가 순서대로 출력이 가능하다. 이름 순으로 뽑으니 BLAKE가 추출되었다. 인라인뷰로 데이터를 테이블화 하여 새롭게 정렬된 데이터를 불러오는 것이다. 이것을 FETCH 절에서 인라인뷰를 사.. 2023. 11. 20.
[복습] SQL | Oracle 문자열의 규칙 찾기, 문자열의 일반화인 정규식 표현식(2) 지난 번 게시글에 이어서 정규식 표현식의 정리노트이다. https://metime.tistory.com/91 [복습] SQL | Oracle 문자열의 규칙 찾기, 문자열의 일반화인 정규식 표현식 + 복습후기(20231117) 정규식 표현식이란 문자열의 일반화 규칙을 표현하는 방법으로, 오라클에서는 정규식 표현식 사용가능한 문자함수를 제공하고 있다( REGEXP_REPLACE, REGEXP_SUBSTR, REGEXP_INSTR,... 이런 식으로) 정규식 metime.tistory.com [정규식 표현식] 1. REGEXP_REPLACE REGEXP_REPLACE(대상, 찾을문자열, 바꿀문자열, 검색위치, 발견횟수, 옵션) 총 이렇게 들어간다. 전 시간에는 바꿀문자열까지만 배웠었다. (abc......ab.. 2023. 11. 20.
[실습문제] 2023. 11. 17.(금) (2문제) 실습문제 1. SEOUL_NEW 데이터에서 게시물번호, 작성날짜, 조회수를 각각 출력하여라. 데이터는 이런 형식으로 되어있다. 띄어쓰기로 구분되어 있으며 차례대로 게시글번호, 글제목, 작성날짜, 조회수 이다. 먼저 내 풀이는 아래와 같다. 게시글 번호와 작성날짜는 무난하게 추출하였다. 선생님 방법이 더 간단하지만.. 조회수를 추출할 때 뒤의 번호를 추출하는 것이 번거로워서 데이터를 뒤집어 앞 두자리를 추출한 다음 추출한 번호를 다시 뒤집었다. 그런데 더 간단하게 추출하는 방법이 있었으며, 선생님 풀이는 아래와 같다. LINE 7은 어제 내가 구글링해서 공부한 방법으로 푸셨고 이 방법은 수업시간에 설명해주셔서 따로 여기서 설명은 안 하도록 하겠다. 실습문제 2 PROFESSOR 테이블에서 ID의 값을 확인.. 2023. 11. 20.
[복습] SQL | Oracle 문자열의 규칙 찾기, 문자열의 일반화인 정규식 표현식 + 복습후기(20231117) 정규식 표현식이란 문자열의 일반화 규칙을 표현하는 방법으로, 오라클에서는 정규식 표현식 사용가능한 문자함수를 제공하고 있다( REGEXP_REPLACE, REGEXP_SUBSTR, REGEXP_INSTR,... 이런 식으로) 정규식 표현식의 종류 1) 데이터 타입 관련 \d: 숫자 \w: (공백을 제외한)글자(문자와 숫자) → 여기서는 언더바(_)까지 포함한다. \W: 글자가 아닌 공백과 특수기호 → 여기서는 (_)언더바를 제외한다. \s: 한글자 이상의 공백(그러므로 탭도 포함됨) [[:alpha:]]: 글자 [[:digit:]]: 숫자 [[:alnum:]]: 글자(문자+숫자) [[:punct:]]: 특수기호 2) 한 글자의 특수기호 형태 ★ ^: 시작 예를 들어 ^a\w+ 하면 a로 시작하는 단어들이.. 2023. 11. 17.
[복습] SQL | Oracle GROUP BY 의 함수 종류(GROUPING SETS, ROLLUP, CUBE) GROUP BY 절에서 가능한 함수를 알아보겠다. 부분합 출력이 목적이며, GROUP BY 결과에 추가적으로 요약된 값을 출력한다. 1. GROUPING SETS(A, B,...) → (A별) + (B별) A별 + B별 합집합을 출력한다(각각 그룹핑 연산 결과를 UNION ALL로 표현이 가능하다). 나열 순서는 중요하지 않으며, ()를 쓰지 않고는 전체 통계가 출력되지 않는다. ()나 NULL로 전달하여야 출력된다. 먼저 우리가 기존에 그룹연산을 하는 방법이다. 예) DEPTNO, JOB 별 GROUPING SETS를 이용하면 아래와 같다. DEPTNO별 JOB별 각각 출력된다. 이것을 SELECT DEPTNO, SUM(SAL) FROM EMP GROUP BY DEPTNO; SELECT JOB, SUM.. 2023. 11. 17.
[복습] SQL | Oracle 사용자 정책 만들기 PROFILE PROFILE은 사용자 정책을 만드는 것으로, 로그온 정책 / 리소스 정책 으로 나뉜다. 로그온 정책은 패스워드 정책이라고도 하며, 사용자가 로그인 할 때 유효기간이라든가 하는 것들을 정하는 것이다. 리소스(자원) 정책은 예를 들어 접속한 지 한 시간 반이 지났을 때 세션이 완료되도록 정하거나(IDLE 타임, 휴면시간), CPU타임 등도 리소스 정책에 들어간다. 1. 조회 위와 같이 조회할 수 있으며, 대충 이해할 수 있을 만한 걸 밑줄쳐보았다. PROFILE 이름에 DEFAULT 보이는 게 DEFAULT PROFILE이다. 2. 생성 이렇게 생성하며, 아래와 같이 생성할 것들을 나열할 수 있다. 그리고 이렇게 만든 프로파일을 계정에 다음과 같이 적용할 수 있다. 3. 변경 LINE 1이 문법이며, LI.. 2023. 11. 17.
728x90
반응형