중복제거
- DISTINCT
- GROUP BY 묶어서 가능하나 비추천 잊어버리자
- 기본형태
- SELECT DISTICNT ~~~
- FROM
--중복 제거 전
SELECT MGR
FROM EMP
WHERE JOB = 'SALESMAN'
;
--출력: 7698,7698,7698,7698
--중복제거
SELECT DISTINCT MGR
FROM EMP
WHERE JOB = 'SALESMAN'
;
--출력: 7698
UNION - ROW 기반의 테이블 합치기
UNION : 중복을 제거해준다
UNION ALL : 중복 제거없이 그대로 붙여준다.
단 주의사항이 있다 : 각 쿼리결과의 컬럼개수와 타입이 동일해야하며 컬럼명은 첫 쿼리를 따른다.
기본형태
쿼리
UNION
쿼리
--UNION
SELECT ENAME, JOB, SAL
FROM EMP
UNION
SELECT ENAME AS 이름, JOB, SAL--밑에라서 별칭 작용 X,위에다 해줘야함
FROM EMP
;
--출력 : 14줄나온다
--UNION ALL
SELECT ENAME AS 이름, JOB, SAL
FROM EMP
UNION ALL
SELECT ENAME, JOB, SAL
FROM EMP
;
--출력 : 28줄
#FK삭제 시
#시퀀스 : 값을 지정하지않고 순서대로 지정해주는 함수
위처럼 기본 생성법은 이러하다. 시작할 순서를 정하고 나머지는 1로 지정한다. 그리고 최대값을 지정함에 있어 뭐든 상관없지만 최대 개수는 9의 28개이다.
기본 문법
SELECT MEM_SEQ.NEXTVAL
FROM DUAL
;
SELECT MEM_SEQ.CURRVAL
FROM DUAL
;
INSERT INTO MEM (MNO,MNAME,MBIRTH,MPHONE,MGEN)
VALUES (MEM_SEQ.NEXTVAL,'홍길동' || MEM_SEQ.CURRVAL,'1900-10-10','011-123-1234',0)
;
기본적으로 셀렉트문에 사용가능하며 주 사용처는 위와 같다.
NEXTVAL : 다음에 1추가한 값을 넣어줌
CURRVAL: 현재 값을 보여준다
시퀀스는 한번 시작되면 되돌릴 수 없다. 다시 되돌리려면 모든 데이터를 삭제하고 다시 시작해야한다.
#LPAD(값, 숫자, 값2) - 고유값을 지정하는 것
값이 숫자 개수만큼 될때까지
왼쪽에 값2로 채운다.
트렌지션에 영향을 받지 않는 것 = DDL 과 시퀀스
#데이터 백업
익스포트 마법사 활용하고 파일 저장 바탕화면 그리고 다 다음 누르면 된다.
'about. What I learned' 카테고리의 다른 글
4주차 자바스터디 (0) | 2021.08.25 |
---|---|
Spring (0) | 2021.05.31 |
DATA BASE - 함수 (0) | 2021.04.18 |
4/13 DATABASE - 오라클 수업 (0) | 2021.04.13 |
4/12 DATABASE - 배운 것 (0) | 2021.04.12 |