Computer Science/DataBase

DDL데이터 정의어AUTO COMMIT   CREATE테이블이나 인덱스같은 객체를 생성   ALTER컬럼 추가컬럼 속성변경여러컬럼 동시추가가능(괄호사용하여)   DROP객체 삭제DROP후 조회불가(테이블 구조자체 삭제)  TRUNCATE데이터전체 삭제(테이블 구조는 남아있음)  제약조건PK(기본키)유일한 식별자NOT NULLUNIQUE여러 기본키 금지  UNIQUE중복허용안함NULL 허용  NOT NULLNULL 허용안함 FOREIGN KEY참조테이블의 참조컬럼에 있는 데이터를 확인하면서본 테이블 데이터 관리목적 FOREIGN KEY옵션ON DELETE CASCADE부모 데이터 삭제시 자식 데이터삭제 ON DELETE SET NULL부모 데이터 삭제시 자식 데이터 NULL변경    DCL데이터 제어어권한..
DMLCOMMIT, ROLLBACK 반드시 필요  INSERT한번에 한행만 입력가능작성하지않은 컬럼은 NULL전체컬럼에 대한 입력시 컬럼명 생략가능문자컬럼에 숫자값가능숫자컬럼에 '001'같은 문자 입력가능  UPDATE데이터 수정컬럼 단위 수행다중컬럼 수정도 가능 다중컬럼 SET 컬럼=값,컬럼2=값2,.......또는SET (컬럼1,컬럼2...) = (SELECT 값1,값2.....)    DELETE데이터 삭제행단위 실행 MERGE데이터 병합참조테이블 필요  TCL트랜잭션 제어어COMMIT, ROLLBACK이 포함됨 트랜잭션데이터베이스의 논리적 연산단위원자성:트랜잭션 연산이 모두 실행 또는 모두 X일관성:트랜잭션 실행전 내용이 잘못되있지않으면 실행후에도 잘못X고립성:트랜잭션 실행중 다른 트랜잭션의 영향..
TOP N쿼리ROWNUM출력된 데이터 기준으로 행번호 부여절대적 번호 아니고 계속 변할수있음상위 5명 뽑기-> FROM 에서 DESC 로 정렬한 서브쿼리->WHERE ROWNUM FETCHOFFSET N {ROW|ROWS}FETCH {FIRST|NEXT} N {ROW|ROWS} ONLYOFFSET:건너뛸 행수N  출력할 행수FIRST:OFFSET을 쓰지 않았을때 처음부터 N행까지 출력NEXT: OFFSET을 사용했을때 제외한 행부터 N행까지 출력       계층형 질의START WITH 시작조건CONNECT BY PRIOR 연결조건 행과 행사이의 계층(depth)를 표현연결조건 상위=하위 -> 정방향 LEVEL:DEPTH를 표현 (1부터)CONNECT_BY_ISLEAF:리프 노드 여부CONNECT_BY_..
윈도우 함수서로 다른 행의 비교나 연산을 위해 만든 함수SELECT WINDOW_FUNCTION (ARGUMENTS) OVER(  PARTITION BY 칼럼 ORDER BY절  WINDOWING 절  )FROM 테이블명;   연산범위ROWS:값이 같더라도 각행씩연산RANGE:같은 값인 경우 하나의 RANGE로 묶어서 동시 계산   BETWEEN A AND BA)시작CURRENT ROW 현재행부터UNBOUNDED PRECEDING: 처음부터(디폴트값임)N PRECEDING: N 이전부터 B)마지막CURRENT ROW: 현재행까지 (디폴트값임) UNBOUNDED FOLLOWING: 마지막까지N FOLLOING:N이후까지     RANK(순위)특정값에 대한 순위 RANK() OVER()특정 그룹중 값의 순위..
집합연산자두 집합의 컬럼이 동일해야함 합집합UNION중복된거 하나로 출력(중복된거 없을시 UNION ALL 하고 출력같음) UNION ALL중복된 데이터도 전체 출력  교집합INTERSECT 차집합MINUS    그룹함수COUNT행의 수를 센다.SUM숫자 총합AVG평균 출력MIN/MAX최소/최대  GROUPING SETS(A,B)A,B 그룹별 연산결과 BBB1111 BBB2111AAA1 111AAA2 111 GROUPING SETS((A,B))으로 하면 그냥 출력함 NULL, B, SUM(SAL)UNION ALLA,NULL, SUM(SAL) 로 대체 가능    ROLLUP(A,B) AAA1BBB111 AAA1BBB111AAA1 222AAA2 BBB 111 AAA2 BBB 111 AAA2  222  44..
서브쿼리 하나의 SQL 문안에 있는 또다른 SQL문GROUP BY 절에서는 사용불가 연관쿼리서브쿼리가 메인쿼리 컬럼을 가지고있음 사용한곳부르는 명칭목적SELECT스칼라 서브쿼리하나의 컬럼처럼 사용하기 위해FROM인라인뷰서브쿼리 결과를 테이블 처럼 사용하기 위해WHERE일반적인 서브쿼리비교상수 자리 값을 전달하기 위한 목적  WHERE 절 서브쿼리단일행 서브쿼리서브쿼리 결과가 1개의 행이 리턴 다중행 서브쿼리서브쿼리 결과가 여러개 행이 리턴다중행 서브쿼리 연산자만 사용가능해짐(IN, ANY, ALL) 다중 컬럼 서브쿼리서브쿼리 결과가 여러 컬럼이 리턴대소비교 불가  상호연관 서브쿼리메인쿼리와 서브쿼리를 비교  인라인뷰뷰의 형태로 테이블 처럼 조회할 데이터를 정의테이블 별칭 꼭사용하기 스칼라 쿼리SELECT..
JOIN (조인)여러테이블을 동시출력, 참조할경우FROM 절에 조인할 테이블 나열동일한 열이름이 여러 테이블에 있을경우 Alias N개 테이블 조인할때 N-1개 조인 필요 EQUI JOIN:동등조건경우'=' 비교를 통해 같은 값을 가지고있는 행을 연결하여 결과를 얻음NON EQUI JOIN:동등조건아닐때INNER JOINJOIN 조건 성립하는 데이터만 출력OUTER JOINJOIN 조건에 성립하지않는 데이터도 출력(LEFT/RIGHT/FULL OUTER JOIN) NATURAL JOIN조인조건 생략시 두 테이블이 같은 이름으로 자연 연결되는 조인CROSS JOIN조인조건 생략시 두테이블 의 발생가능한 모든 행을 출력SELF JOIN하나의 테이블을 두번 이상 참조, 테이블 별칭 무조건 사용 표준 조인INN..
SQL 종류DDL(AUTO COMMIT)CREATEALTERDROPTRUNCATE DMLINSERTDELETEUPDATEMERGE DCL(권한)GRANTREVOKE TCL(트랜섹션관리)COMMITROLLBACKDQLSELECT     SELECT문작성 SELECT 컬럼명 또는 표현식 FROM 테이블 또는 뷰WHERE 조회조건GROUP BY 그루핑 컬럼명HAVING 그루핑 필터링조건ORDER BY  정렬 컬럼명  실행FROM->WHERE->GROUP BY ->HAVING ->SELECT ->ORDER BY순 실행  SELECTSELECT문 Alias(별칭)EX)EMPNO AS 사번 AS 생략 가능EX)EMPNO 사번 SELECT문에서 별칭 사용시 ORDER BY에서만 별칭사용가능(실행순서때문에)   FRO..
아사_
'Computer Science/DataBase' 카테고리의 글 목록