관리 메뉴

FU11M00N

[ mysql ] mysql 관계형 데이터베이스. join문 본문

SUA 정보보안/php&mysql

[ mysql ] mysql 관계형 데이터베이스. join문

호IT 2021. 2. 14. 19:38

 

- 관계형 데이터베이스

 

관계형 데이터베이스란 테이블(table)로 이루어져 있으며, 이 테이블은 키(key)와 값(value)의 관계를 나타냅니다.

이처럼 데이터의 종속성을 관계(relationship)로 표현하는 것이 관계형 데이터베이스의 특징입니다.

 

- 관계형 데이터베이스의 특징

  • 데이터의 분류, 정렬, 탐색 속도가 빠릅니다.
  • 오랫동안 사용된 만큼 신뢰성이 높고, 어떤 상황에서도 데이터의 무결성을 보장해 줍니다.
  • 기존에 작성된 스키마를 수정하기가 어렵습니다.
  • 데이터베이스의 부하를 분석하는 것이 어렵습니다.

 

- join

조인(JOIN) 연산은 두 개의 릴레이션 A와 B에서 공통된 속성을 연결하는 것입니다.

이 와 같은 조인 연산은 하나의 릴레이션으로는 원하는 결과를 얻을 수 없을 경우,

두 개 이상의 릴레이션을 공통 속성으로 연결하여 원하는 결과를 포함한 릴레이션을 생성 할 때 이용합니다.

 

- INNER JOIN 

INNER JOIN 키워드는 양쪽 테이블 모두에서 일치하는 레코드를 반환합니다.

SELECT column_name(s)FROM table1 INNER JOIN table2 ON table1.column_name = table2.column_name;

 

 

- LEFT JOIN

LEFT JOIN 키워드는 왼쪽 테이블(table1)의 모든 레코드와 오른쪽 테이블(table2)의 일치하는 레코드를 반환합니다. 오른쪽에 일치하는 레코드가 없으면 오른쪽에서는 결과가 NULL이 됩니다.

 

SELECT column_name(s)FROM table1 LEFT JOIN table2 ON table1.column_name = table2.column_name;

 

 

 

- RIGHT JOIN 

RIGHT JOIN 키워드는 오른쪽 테이블(table2)의 모든 레코드와 왼쪽 테이블(table1)의 일치하는 레코드를 반환합니다. 왼쪽에 일치하는 레코드가 없으면 오른쪽에서는 결과가 NULL이 됩니다.

SELECT column_name(s) FROM table1 RIGHT JOIN table2 ON table1.column_name = table2.column_name;

 

- OUTER JOIN

FULL OUTER JOIN 키워드는 왼쪽 테이블(table1) 또는 오른쪽 테이블(table2) 레코드에 일치하는 모든 레코드를 반환합니다.

 

SELECT column_name(s) FROM table1 FULL OUTER JOIN table2 ON table1.column_name = table2.column_name WHERE condition;

 

 

 

 

 

 

 

 

SUA 정보보안 멘토링에 참여하고 있습니다.

 

 

 

 

 

 

 

ref https://www.w3schools.com/sql/default.asp

Comments