Notice
Recent Posts
Recent Comments
Link
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Archives
Today
Total
관리 메뉴

브래의 슬기로운 코딩 생활

데이터베이스 4주차 정리 본문

2-1/데이터베이스

데이터베이스 4주차 정리

김브래 2023. 3. 27. 18:09

정렬 쿼리

ORDER BY


ORDER BY

ORDER BY는 조회한 레코드 목록을 정렬할 때 사용한다.

ASC 키워드로 오름차순 정렬, DESC 키워드로 내림차순 정렬이 된다.

(생략하면 오름차순 정렬 됨)

 

SELECT column1

FROM table_name

ORDER BY column1 ASC | DESC;

 

정렬 기준을 여러 개의 속성으로 할 때는 ‘ , ’를 이용해 속성 이름을 나열한다.

(column1 값이 같으면 column2를 기준으로 정렬)

 

SELECT column1, column2, …

FROM table_name

ORDER BY column1 ASC | DESC, column2 ASC | DESC


집계 함수와 GROUP BY

COUNT, SUM, AVG, MIN, MAX, HAVING


집계 함수 (AGGREGATE FUNCTION)

집계 함수는 여러 행으로부터 하나의 계산 값을 반환하는 함수이다.

SELECT 문에만 사용 가능하다.

 

 

COUNT(column1)
선택한 칼럼의 NULL을 제외한 행의 개수를 센다.
COUNT(*)로 작성하면 테이블에 존재하는 행의 개수를 반환한다.
 
AVG(column1)
선택한 칼럼의 평균을 구한다.
숫자인 값에 대해서만 연산이 가능하다. NULL 값은 무시하고 계산한다.
 
SUM(column1)
선택한 칼럼의 합을 구한다.
평균과 마찬가지로 숫자인 값에 대해서면 연산이 가능하다.
 
MIN(column1) | MAX(column1)
선택한 칼럼의 최솟값과 최댓값을 구한다.
AVG와 SUM과 다르게 숫자가 아닌 값에도 연산이 가능하다.

GROUP BY / HAVING

 

GROUP BY(column1)
column1 값들로 그룹을 묶어서 각 그룹별로 계산을 시켜주는 구문이다.

 

GROUP BY 안에 칼럼이 여러 개일 경우 - (GROUP BY(column1, column2):
column1을 기준으로 그룹을 만든 후 그 안에서 column2를 기준으로 하는 그룹을 만든다.
 
HAVING절집계 함수 그리고 GROUP BY와 함께 쓰는 조건문이다.
WHERE절과는 다르게 집계 함수와 함께 사용 가능하다.

 

 

※ SELECT문과 사용되는 구문들의 순서 ※

 

SELECT … FROM … WHERE … GROUP BY … HAVING … ORDER BY

 


JOIN


두 개 이상의 테이블을 서로 연결하여 데이터를 검색할 때 사용하는 방법

 

두 개의 테이블을 마치 하나의 테이블인 것처럼 보여준다

 

두 테이블의 조인을 위해 키(KEY)와 외래키(FOREIGN KEY) 관계를 설정해 두면 속도 향상의 이점이 있다

INNER JOIN (내부 조인)

 

두 테이블에 지정한 컬럼의 데이터가 있는 경우만 조회

 

SELECT column1, column2, …

FROM table_A

INNER JOIN table_B

ON table_A.column = table_B.column;

OUTER JOIN (외부 조인)

두 테이블 중 하나의 테이블에만 지정한 컬럼에 값이 있어도 조회

 
- LEFT OUTER JOIN: 왼쪽 테이블의 모든 값이 출력되는 조인
- RIGHT OUTER JOIN: 오른쪽 테이블의 모든 값이 출력되는 조인
- FULL OUTER JOIN: 왼쪽 또는 오른쪽 테이블의 모든 값이 출력되는 조인
 

SELECT column1, column2, …

FROM table_A – (LEFT 테이블)

<LEFT | RIGHT | FULL> JOIN table_B – (RIGHT 테이블)

ON table_A.column = table_B.column;

'2-1 > 데이터베이스' 카테고리의 다른 글

데이터베이스 5주차 과제  (0) 2023.04.04
데이터베이스 5주차 정리  (0) 2023.04.03
데이터베이스 3주차 정리  (0) 2023.03.20
데이터베이스 2주차 정리  (0) 2023.03.13
데이터베이스 1주차 정리  (0) 2023.03.06