Knowledge/이론

SQL 명령어

똑똑한망치 2024. 3. 4. 21:46
728x90
반응형

(1) SELECT 문의 기본 문법

SELECT 검색할 컬럼 
FROM 검색할 테이블명 ;
-- SELECT 문 기본 문법 예시

-- book이라는 테이블에서 title, author 컬럼 검색

SELECT title, author
FROM book ;

 

 

(2) 모든 데이터 가져오기

SELECT *
FROM 검색할 테이블명 ;
-- book 테이블의 모든 컬럼 검색

SELECT *
FROM book;

 

 

(3) 조건에 맞는 컬럼 가져오기

SELECT *
FROM book
WHERE 조건 ;
SELECT *
FROM book
WHERE title = "백설공주" ;

 

 

(4) 중복 제거한 컬럼만 출력

DISTINCT 키워드를 사용하여 중복 결과를 제거한 레코드를 얻을 수 있다.

SELECT DISTINCT 컬럼
FROM 테이블 이름 ;
SELECT DISTINCT title, author
FROM book;

 

 

(5) GROUP BY 문

GROUP BY 키워드는 데이터 분석을 위한 집계함수 등을 처리할 때, 그룹을 지을 필드를 지정하기 위해 사용하는 명령어 이다. 

 

SELECT 컬럼명
FROM 테이블명
(WHERE 테이블에 대한 조건)
GROUP BY 그룹화할 컬럼명
HAVING 그룹화된 데이터에 대한 조건

 

-- AVG(price) : price 컬럼에 대한 평균값 반환
-- date 컬럼을 기준으로 그룹화
-- HAVING BY(*) > 3 : 그룹화된 컬럼들 결과 중 3이 넘는 데이터만 출력

SELECT date, AVG(price)
FROM visit
GROUP BY date
HAVING COUNT(*) > 3

 

대표적인 집계 함수

  • COUNT() : 행의 갯수를 세어줌
  • AVG() : 행 안에 있는 값의 평균을 내어줌
  • MIN() : 행 안에 있는 값의 최솟값을 반환한다.
  • MAX() : 행 안에 있는 값의 최댓값을 반환한다.
  • SUM() : 행 안에 있는 값의 합을 반환한다.

GROUP BY 예시 사진

 

 

※ WHERE 절과 HAVING 절의 차이점

WHERE 절은 FROM 뒤에 위치하여, SELECT 하는 레코드에 대한 조건을 정의한다.

HAVING 절은 GROUP BY 절 뒤에 위치하여, 그룹화되어 만들어진 레코드 집합에 대해. 조건을 정의한다.

반응형

'Knowledge > 이론' 카테고리의 다른 글

데이터베이스 조인 (Join)  (1) 2024.03.12
정규화 & 비정규화  (0) 2024.03.04
MVC 패턴  (1) 2024.02.27
인덱스  (1) 2024.02.25
RESTful API  (0) 2024.02.25