전체 글

기록하는 습관을 기르자
반응형
Backend/SQL(Oracle)

[kh정보교육원 44일차] DCL - GRANT, REVOKE / TCL / DB-Object-data dictionary,stored view, Sequence, Index

DCL Data Control Language 데이터 제어어 권한을 부여/회수하는 명령어 (grant / revoke) TCL Transaction Control Language 를 포함한다. (commit / rollback) GRANT / REVOKE grant 권한 or 롤 to 사용자 or 롤 or public [ with admin option] 권한 previliage - create session, create table , select on table, ....( ~할 수 있는) 롤 role 권한 묶음 - connect , resource, dba, ... with admin option 부여받은 권한 or 롤을 다시 다른 사용자에게 부여할 수 있는 권한 qwerty 사용자생성 qwerty..

Backend/SQL(Oracle)

[kh정보교육원 42일차] DDL - Create 제약조건 /ALTER(add,modify,rename,drop)/TABLE RENAME

DDL Data Definition Language 데이터 정의어 DDL은 Database 객체를 생성하는 기능, Alter 수정, Drop 삭제 하는 명령어이다. 실행 즉시 db에 반영되므로 TCL처리가 필요없다. select object_type from all_objects; 위와 같은 코드를 실행하면 사용자가 소유한 객체, 사용권한을 위임받은 객체 모두 조회 가능한 Data Dictionary를 볼 수 있다. 수십개의 행이 계속해서 인출된다. Create 객체를 생성하는 명령어 컬럼 작성시 컬럼명 자료형 [기본값] [제약조건] 순으로 작성한다. create table member( id varchar2(20) primary key, password varchar2(20) not null, name..

Backend/SQL(Oracle)

[kh정보교육원 41일차] DML - INSERT, SELECT, UPDATE, DELETE (CRUD, Create, Read, Update, Delete) truncate

금요일에는 DML에 대해 자세히 배워보았다. 초반에 테이블을 만들고 지우느라 Create, Delete기능을 사용하긴 했지만, 제대로 알진 않았기에 이번에 제대로 배워본다. DML Data Manipulation Language : 데이터 조작어 테이블 객체의 데이터에 대해 생성,조회, 수정, 삭제 (CRUD : Create , Read, Update, Delete) 하는 명령어 insert (Create) select (Read) update (Update) delete (Delete) dml명령어 수행시 메모리에서 우선작업하므로 TCL(Transaction Control Language)를 통해서 실제 db에 반영(commit), 작업취소(rollback)하는 과정이 필요하다. * dml언어 사용시에..

Backend/SQL(Oracle)

[kh정보교육원 40일차] inline view /rownum /순위- rank, dense_rank,row_number /집계-sum over,listagg,avg over

유형 분류 결과값에 따른 유형 메인 쿼리 관계에 따른 구분 위치에 따른 구분 1. 단일행 단일컬럼 서브쿼리 (1행 1열) 1. 일반 서브쿼리 서브쿼리의 결과값을 메인쿼리에 통보 1. 스칼라 서브 쿼리 2. 다중행 단일컬럼 서브쿼리 (n행 1열) 3. 단일행 다중컬럼 서브쿼리(1행 n열) 2. 상호연관 서브쿼리 메인쿼리값을 가지고 서브쿼리 처리 후, 메인쿼리에 다시 통보 2. inline - view 4. 다중행 다중컬럼 서브쿼리(n행 m열) 지난시간에 서브쿼리를 분류에 따라 배웠다. 이때, inline - view에 대해 배우지 못했는데, 오늘 배우게 된다. inline view - from절에 사용된 서브쿼리 - view란 실제 테이블에 근거해서 작성된 논리적 가상 테이블을 의미한다. view를 통해 ..

Backend/SQL(Oracle)

[kh정보교육원 39일차] JOIN 오라클 전용문법, SUB-QUERY (서브쿼리의 종류들- 상호연관 서브쿼리, 스칼라 서브쿼리 등) any,some,all

조인문법에는 1. ansi 표준문법 : join, on 키워드 사용 2. oracle 전용문법 : , (콤마 ), where절 사용 두가지 방법이 있다. ansi표준문법의 경우 36, 35일차에 알아보았다. 오라클 표준문법을 ANSI표준문법과 비교해보겠다. EQUI JOIN 1. INNER JOIN 이너조인 ANSI 표준문법은 회색, 오라클 전용 문법은 검정색 창 안에 적었다. 오라클 전용문법은 테이블 순서가 중요하지 않다. select e.emp_name, d.dept_title from employee e inner join department d on e.dept_code = d.dept_id; select e.emp_name, d.dept_title from employee e,department..

Backend/SQL(Oracle)

[kh정보교육원 37일차] JOIN(cross join,self join,multiple join,SET OPERATOR(UNION,INTERSECT,MINUS)

JOIN - inner join - outer join 1. left outer join 2. right outer join 3. full outer join - cross join - self join - multiple join SET OPERATOR - union - union all - intersect - minus 이게 오늘까지 배운 내용의 요약이라 할 수 있다. 금요일에 배운 INNER JOIN, OUTER JOIN을 다시 보자. INNER JOIN (이너 조인) - 내부 조인. 두 테이블간의 교집합을 의미한다. - 각 테이블에서 기준컬럼이 null인 행, 상대테이블에서 매칭되는 행이 없는 행 제외. - inner 키워드 생략 가능. (inner) join으로 작성 예시 employee | ..

Backend/SQL(Oracle)

[kh정보교육원 36일차] DQL2 - group by / having / rollup / cube / JOIN (inner join , outer join )

Group by - 테이블 전체 행을 특정컬럼이 동일한 행끼리 그룹핑 처리 - group by 절이 없다면, 테이블 모든 행이 하나의 그룹으로 처리 - group by에 명시한 컬럼만 select절에 사용될 수 있음. 아닌 컬럼 사용시 오류 발생 - group by 는 null도 그룹으로 처리한다. - 가상컬럼을 가지고도 group by가 가능하다. - group by는 컬럼 순서가 중요하지 않다. - group by에서 여러개의 컬럼을 그룹으로 할 경우, distinct 처리와 같이 두 컬럼의 값이 동일한 행을 그룹핑한다. ex) 부서별로 급여 합계 select dept_code, sum(salary) sum_sal, trunc(avg(salary)) avg_sal from employee group ..

Backend/SQL(Oracle)

[kh정보교육원 35일차] FUNCTION - 단일행처리함수 (문자처리, 숫자처리, 날짜처리, 형변환, 기타함수) / 그룹함수 (sum, avg, count, max, min)

단일행처리 함수 a. 문자처리 함수 length(value) : 글자수를 반환 instr(value, search, [position] , [occurrence]) : value에서 search의 인덱스를 반환 substr(value, position, [length]) : value에서 position부터 length개 잘라서 문자열 반환 lpad(value, len, [padding_str]) : len 에서 value의 길이를 뺀 만큼 padding_str를 왼쪽에 채워서 처리 rpad(value, len, [padding_str]) : len 에서 value의 길이를 뺀만큼 padding_str를 오른쪽에 채워서 처리 length(value) : 글자수를 반환 select emp_name, len..

Backend/SQL(Oracle)

[kh정보교육원 34일차] DQL - SELECT / WHERE / ORDER BY / FUNCTION - 단일행처리 함수

DQL Data Query Language : 테이블의 데이터를 검색(추출)하기 위해 사용하는 sql DML의 하위 그룹으료 분류 데이터 조회결과를 Result Set(결과 집합)이라고 함. 조회시 0행 이상의 결과집합을 리턴받음. select (필수) 5. 조회할 컬럼 from (필수) 1. 조회할 테이블 where 2. 조건절 (true - 결과집합에 포함, false - 결과집합에 제외) group by 3. 행을 특정컬럼 기준으로 그룹핑 having 4. 그룹핑된 결과에 대한 조건절 order by 6. 행간 정렬 숫자는 실제 처리 순서이고, 이 순서대로 코드를 작성하는 것을 추천한다. SELECT - 실제 결과집합(result set)의 컬럼을 제한 - 존재하지 않는 컬럼도 조회함 - 가상컬럼 ..

반응형
유경(shin-6-0)
유경쓰 개발일기