SQL

Programming/Oracle

[Oracle] 유니온 (Union)

💡합집합 (Union) 유니온(Union)은 합집합으로서 테이블을 더한 결과를 출력한다. 스키마가 동일한 결과셋끼리만 가능하다. 유니온의 사용 SELECT * FROM tblMen UNION SELECT * FROM tblWomen; 유니온은 테이블을 더한다고 했다. 따라서 두 테이블을 더한 데이터 20개가 출력된다. 언제 유니온을 사용할까? SELECT * FROM 영업부게시판; SELECT * FROM 총무부게시판; SELECT * FROM 개발부게시판; 각 부서의 근황을 한 번에 알려고 할 때와 같이 다른 데에 있는 테이블들을 합쳐야 하는 일이 생긴다. 사장님이 모든 게시판의 글을 한 번에 보게 해달라고 요청하실 때 바로 유니온을 사용하면 된다. 유니온의 조건 같은 테이블의 구조 --ORA-0178..

Programming/Oracle

[Oracle] 뷰와 뷰 사용 문서 (View)

💡뷰 뷰(View)는 데이터베이스 객체(테이블, 제약 사항, 뷰, 시퀀스) 중 하나이다. 가상 테이블, 뷰 테이블 등으로 부른다. 테이블이라고 부르는 이유는 실제로 뷰를 테이블처럼 사용하기 때문이다. 🔹정의: 쿼리(SQL)를 저장하는 객체 🔹목적: 권한 통제 뷰의 사용 뷰 구문 create [or replace] view 뷰이름 as select문; 뷰 구문에서 [or replace]를 작성하지 않아도 된다. 하지만 작성하는 게 더 편하기 때문에 보편적으로 함께 작성하는 편이다. 뷰 오브젝트 생성 CREATE OR REPLACE VIEW vwInsa AS SELECT * FROM tblInsa; SELECT * FROM vwInsa; --tblInsa 테이블의 복사본 뷰 오브젝트 vwInsa를 하나 생성..

Programming/Oracle

[Oracle] eXERD 설정

💡eXERD 샘플데이터 eXERD를 설치를 완료하였다면 샘플데이터를 확인해 보도록 하자. pos 예제 수강 신청 예제 💡ERD 생성 eXERD File 생성 새로 작성 > eXERD File을 클릭하여 새로운 파일을 생성한다. 데이터베이스를 오라클로 선택, 새 프로젝트를 선택하여 새 파일을 만든다. 이때 사용하는 DBMS에 맞게 설정해준다. 지금은 Oracle을 선택하였다. ERD 그리기 -- 고객 테이블 create table tblCustomer ( seq number primary key, --고객번호(PK) name varchar2(30) not null, --고객명 tel varchar2(15) not null, --연락처 address varchar2(100) not null --주소 ); -..

Programming/Oracle

[Oracle] 조인: 전체 외부 조인 (FULL OUTER JOIN)

💡전체 외부 조인 전체 외부 조인(FULL OUTER JOIN)은 서로 참조하고 있는 관계에서 사용한다. 상대적으로 사용 빈도가 낮은 조인에 속한다. 전체 외부 조인의 사용 SELECT * FROM tblMen;--부모, 자식 SELECT * FROM tblWomen;--자식, 부모 전체 외부 조인은 서로 참조하고 있는 관계에서 사용한다. 사용 빈도가 낮은 조인에 속한다. SELECT m.name, w.name FROM tblMen m INNER JOIN tblWomen w ON m.name = w.couple; 커플인 남자와 여자만을 가져온다. SELECT m.name, w.name FROM tblMen m LEFT OUTER JOIN tblWomen w ON m.name = w.couple; 왼쪽 조..

Programming/Oracle

[Oracle] 조인: 셀프 조인 (Self Join)

💡셀프 조인 셀프 조인(Self Join)은 1개의 테이블을 사용하는 조인이다. 셀프 조인은 자기 스스로와 관계를 맺는 경우를 의미한다. 즉, 똑같은 게 부모 자식이 된다. 다중 조인(2개) + 내부 조인 다중 조인(2개) + 외부 조인 셀프 조인(1개) + 내부 조인 셀프 조인(1개) + 외부 조인 셀프 조인은 아래의 항목에 해당한다. 셀프 조인의 사용 CREATE TABLE tblSelf ( seq NUMBER PRIMARY KEY,--직원번호(PK) name varchar2(30) NOT NULL,--직원명 department varchar2(30) NOT NULL,--부서명 super NUMBER NULL REFERENCES tblSelf(seq)--상사번호(FK) ); INSERT INTO tb..

Programming/Oracle

[Oracle] 조인: 외부 조인 (Outer Join)

💡외부 조인 외부 조인(OUTER JOIN)은 이름만 보면 내부 조인의 반대말인 거 같지만, 그렇지 않다. 모든 외부 조인은 내부 조인의 결과를 포함하고 있다. 여기에 + Alpha를 한 게 외부 조인이다. 내부 조인을 하면 일부 컬럼이 제외되는데, 외부 조인은 그 제외된 컬럼 중에 부모 테이블의 나머지 레코드도 가지고 있다는 특징이 있다. 외부 조인의 사용 select 컬럼리스트 from 테이블A (left|right) outer join 테이블B on 테이블A.컬럼 = 테이블B.컬럼; 외부 조인은 위의 문법으로 작성한다. 💡내부 조인과 외부 조인의 차이 고객, 판매 테이블 SELECT * FROM tblCustomer; --3명 > 5명 SELECT * FROM tblSales; --9건 insert..

Programming/Oracle

[Oracle] 조인: 내부 조인 (Inner Join)

💡내부 조인 내부 조인(INNER JOIN)은 단순 조인에서 유효한 레코드만을 추출하는 조인이다. 쓸모없는 것은 버리고 쓸모 있는 쪽만 남긴다. 내부 조인의 사용 select 컬럼리스트 from 테이블A inner join 테이블B on 테이블A.PK = 테이블B.FK; select 컬럼리스트 from 테이블A inner join 테이블B on 테이블A.PK = 테이블B.FK; 내부 조인을 작성할 때에는 on 조건을 걸어주어야 한다. 이때 테이블 A의 기본키와 테이블 B의 외래키를 찾아달라는 구문을 작성한다. 명확한 컬럼 이름 명시 SELECT * FROM TBLSTAFF INNER JOIN TBLPROJECT ON TBLSTAFF.seq = TBLPROJECT.staff_seq; 경우에 따라 테이블 이..

Programming/Oracle

[Oracle] 조인: 단순 조인 (Cross Join)

💡단순 조인 단순 조인(CROSS JOIN)은 카티션 곱(데카르트 곱)이라고도 한다. A 테이블 x B 테이블로 테이블을 곱하는 작업을 한다. 그 결과 가치가 있는 행과 가치가 없는 행이 뒤섞이게 된다. 이러한 이유로 크로스 조인은 더미데이터 이외에는 잘 사용하지 않지만, 다른 모든 조인의 근간이 된다. [Oracle] 관계대수 (Relational Algebra) 💡관계대수 관계대수(Relational Algebra)는 릴레이션에서 원하는 값을 얻기 위해 수학 연산을 이용해 질의하는 방법을 기술하는 언어이다. 관계대수는 수학 연산(+, -...)을 하는데, 피연산자가 테이 isaac-christian.tistory.com 카티션 곱에 대해서는 위 글을 참고하도록 하자. 단순 조인의 사용 SELECT *..

Isaac-Christian
'SQL' 태그의 글 목록 (5 Page)