Re:제로부터 시작하는 갓생

[TIL] 24/11/28 SQL 본문

Daily/TIL

[TIL] 24/11/28 SQL

기븜 2024. 11. 28. 23:59
엑셀보다 쉽고 빠른 SQL
1-2주차

 

< 1주차 강의 내용 >

* 준비

DBeaver 설치 후 MySQL 연동

컬럼: 엑셀과 유사구조 테이블=필드

Query: SQL 이용해 DB에 명령 내리는 것

명령어 작성 후 실행시 Control+enter

 

* SQL 데이터 조회하기 (SELECT, FROM)

SELECT: 가져온다

select*: 데이터 불러올때 모든 컬럼을 가져온다

FROM: 데이터 불러올 테이블을 특정함

 

* 필요한 항목만 뽑아서 사용하기

테이블 기본구조

select *

from 데이터 전체 가져올 명령어

 

특정 컬럼 가져올때

select 희망 컬럼 명령어,

from 데이터 전체 명령어

 

컬럼명(별명) 변경 방법

- 컬럼 as 별명

- 컬럼 별명 ---> 나는 이방법 사용예정

+ Eng, 언더바: 별명만 기재

+ Kor, 특수문자: "별명" 형식으로 기재

 

* 조건에 맞는 데이터로 필터링하기 (WHERE 이란)

데이터 필터링---> excel 같은 형식

select

from

where 숫자 or '문자'

 

* where절 필터링시 표현 (비교연산, BETWEEN, IN, LIKE)

<> 같지 않다. 다르다

>= 크거나 같다

<= 작거나 같다

 

between A and B: A와 B 사이

in (조건, 조건, 조건): 포함하는 조건

like '시작문자%' or '%포함문자%' or '%끝문자': 비슷한 값 조건으로

 

* 여러조건 필터링 (논리연산)

select *

from

where

and 그리고 / or 또는 / not 아닌

 

< 2주차 강의 내용 >

* 엑셀 대신 SQL로 한번에 계산하기 (SUM, AVERAGE, COUNT, MIN, MAX)

숫자 연산-> 엑셀과 동일 기능

합계: SUM(컬럼)

평균: AVG(컬럼)

데이터 갯수 구하기: COUNT(컬럼 or 1 or *)

몇개의 값을 가지고 있나: 마지막에 DISTINCT 추가 기재

최솟값: MIN(컬럼)

최댓값: MAX(컬럼)

 

* GROUP BY로 범주별 연산

Group by

- 쿼리가 많을때 where절을 사용하면 비효율적이므로 대체구문

- 원하는 단위로 나누는 것(eg. 종류별, 식당별)

- 카테고리별로 계산함

 

group by 구조

select 카테고리 컬럼(원하는 컬럼)

            sum(계산컬럼)

from

group by 카테고리 컬럼(원하는 컬럼)

 

* ORDER BY로 Query 결과를 정렬하여 사용

Order by

- 결과값을 원하는 값으로 정렬

- 오름차순이 기본정렬(1 2 3 4..)

- 내림차순 정렬시 마지막에 DESC 기재(9 8 7 6..)

 

order by 구조

select 카테고리 컬럼(원하는 컬럼)

            sum(계산컬럼)

from

group by 카테고리 컬럼(원하는 컬럼)

order by 정렬를 원하는 컬럼(카테고리컬럼(원하는 컬럼) or sum(계산컬럼) 가능)

 

* SQL 기초구조 정리 - WHERE, GROUP BY, ORDER BY 로 완성되는 SQL 구조

select: 데이터 조회

from: 어디서 데이터 가져올건지

where: 조건

group by: 범주별

order by: 결과값 정렬

 

 

'Daily > TIL' 카테고리의 다른 글

[TIL] 24/12/03 SQL  (0) 2024.12.03
[TIL] 24/12/02 SQL  (0) 2024.12.02
[WIL] 1주차_11/28~11/29  (0) 2024.11.29
[TIL] 24/11/29 SQL  (3) 2024.11.29
[TIL] 24/11/28 스타터 노트  (0) 2024.11.28