SQL | INNER JOIN, NATURAL JOIN, EQUI JOIN 완벽 정리
·
Computer Science/SQL
JOIN은 SQL에서 둘 이상의 테이블을 연결하여, 관련 있는 데이터를 조합해 하나의 결과로 보여주는 연산입니다. INNER JOIN, NATURAL JOIN, EQUI JOIN에 대해 정리해 보겠습니다.INNER JOIN두 테이블 간 공통된 값을 기준으로 일치하는 행만 반환하는 JOIN 방식입니다. 일반적으로 ON 절을 사용해서 두 테이블을 연결할 기준(column)을 지정합니다. 공통되는 값이 있는 행만 결과로 보여주기에, 조건을 만족하지 않으면 해당 행은 결과에 포함되지 않습니다. SELECT E.FirstName, D.DeptNameFROM Employee EINNER JOIN Department DON E.DeptID = D.DeptID;이 쿼리는 Employee 테이블과 Department 테..
SQL | 관계형 데이터베이스에서 Cartesian Product란?
·
Computer Science/SQL
Cartesian ProductCartesian Product(카티션 곱) 는 두 개의 릴레이션(테이블)에 있는 모든 튜플(행) 을 서로 모든 가능한 조합으로 결합한 결과를 의미합니다. SQL에서는 조인 조건 없이 두 테이블을 결합할 때 발생하며, CROSS JOIN 또는 단순히 FROM A, B를 사용했을 때도 동일한 결과가 나옵니다.두 개의 테이블을 카티션 곱을 해 봅니다.StudentIDNameCourseIDCourseName1Alice101Database1Alice102Algorithms2Bob101Database2Bob102Algorithms결과 튜플 수는 첫 번째 테이블 행 수 × 두 번째 테이블 행 수로, 총 4개가 나옵니다. SELECT *FROM StudentCROSS JOIN Cours..
SQL | UNION과 DIFFERENCE 정리
·
Computer Science/SQL
UNION (합집합)두 개의 릴레이션(테이블)에서 모든 행을 합쳐서 중복 없이 반환하는 연산입니다. 이때, 두 테이블의 속성(컬럼)의 수가 같아야 하고, 각 속성의 도메인(데이터 타입)이 동일해야 합니다. 예시로, 프로젝트 위치 도시들과 Simpson 직원이 거주하는 도시들을 모두 나열하고 두 정보를 결합해서 출력해 보겠습니다.SELECT Location AS CityFROM Project우선, 프로젝트 테이블의 위치 도시들을 선택합니다. 이 쿼리문은 Toronto, London, New York, San Francisco를 출력할 것입니다.SELECT CityFROM EmployeeWHERE Name = 'Simpson'Employee 테이블에서 Name이 "Simpson"인 직원들의 City(도시) ..
SQL | Selection과 Projection 정리
·
Computer Science/SQL
SelectionSelection은 테이블에서 특정 조건을 만족하는 행(row)만 선택하여 반환하는 연산입니다. SQL에서는 WHERE 절과 동일한 역할을 합니다.SELECT * FROM Project WHERE Location = 'Toronto' OR Location = 'London';Project 테이블에서 Location이 "Toronto" 또는 "London"인 모든 행을 선택합니다.SELECT Address, FirstName FROM Employee WHERE Sex = 'M';Employee 테이블에서 성별이 남성(M)인 직원의 주소(Address)와 이름(FirstName)만 선택합니다.ProjectionProjection은 테이블에서 원하는 열(column)만 선택하여 반환하는 연산입..
SQL | 관계형 데이터베이스의 기본 관계 유형 (1:1, 1:N, M:N 관계)
·
Computer Science/SQL
1:1 관계 (One-to-One)한 테이블의 하나의 행이 다른 테이블의 정확히 하나의 행과만 연결되는 관계를 말합니다. 보통 한쪽이 다른 테이블의 기본 키 또는 유일 키를 외래 키로 참조합니다. 위를 예시로 들어보겠습니다. 우리는 Person과 Passport 두 개의 테이블이 있습니다. 하나의 사람은 하나의 여권을 가지고, 하나의 여권은 하나의 사람에만 속합니다. 그러므로 1:1 관계의 조건을 충족합니다. 또한, Passport 테이블이 외래 키를 가지고 있어서 Person을 참조(reference) 하기 때문에 화살표는 "사람 → 여권" 방향으로 향합니다. 1:N 관계 (One-to-Many)한 테이블의 한 행이 다른 테이블의 여러 행과 연결되는 가장 일반적인 관계입니다. "부모-자식" 구조이며, ..
SQL | 관계형 데이터베이스 기본 용어 정리 (Domain, Relation, Table, Attribute, Column, Row, Tuple)
·
Computer Science/SQL
Domain (도메인) 정의: 하나의 속성(attribute)이 가질 수 있는 값들의 집합예시:성별 속성의 도메인 = { 'M', 'F' }나이 속성의 도메인 = 자연수 집합TitleISBNAuthorYearPublishedPublisherThe Hunger GamesB765Suzanne Collins2008Scholastic PressHarry PotterB123J.K. Rowlings1997Scholastic Press위와 같은 테이블이 있을 때, ISBN의 도메인은 알파벳+3자리 숫자입니다.Relation Schema (릴레이션 스키마)정의: 릴레이션의 구조(형식)를 정의하는 틀위의 테이블을 예시로 들면, 릴레이션 스키마는 Book(Title, ISBN, Author, YearPub, Pub)이 됩..
올리브한입
'Computer Science/SQL' 카테고리의 글 목록 (9 Page)