[내배캠 AI코스] TIL

내일배움캠프 19일차 TIL - SQL①

띵제 2024. 3. 25. 23:48

학습내용 한 줄 요약

SQL의 기초 중의 기초 문법을 알아본다

1. 데이터베이스의 개념 이해 ; 테이블과 컬럼(필드)

 

- SQL 은 데이터베이스와 대화를 하기 위한 언어

  데이터베이스에게 결과값을 요청하기 위해 작성하는 질의를 Query라고 한다

 

- 전체 데이터들을 저장한 ‘데이터베이스’ 안에 데이터를 종류별로 저장해 놓은 ‘테이블’이 있다

 

- 테이블은 도표 형식으로 되어있는데, 엑셀이나 회사에서 만든 자체프로그램 전산과 같이 생겼다

  (일하다가 써봤던 수많은 프로그램들을 이런식으로 만드는구나 하고 알 수가 있다)

 

- 각 세로열을 ‘컬럼’이나 ‘필드’라고 부르는데 이 명칭을 알아두는 게 에러메세지를 볼 때 좋다

  (하다보면 저절로 알게 된다 나도 알고 싶지는 않았다)

 

2. SQL 기본구조 : select, from

 

- select ~ : ~ 데이터를 가져오라는 명령어로 모든 쿼리의 시작이다

                  * 은 모든 데이터를 의미, select * 은 지정한 테이블의 모든 데이터를 불러오라는 뜻이 된다 

- from 데이터를 불러올 테이블 지정

 

( 3. 필요한 항목만 뽑아서 사용하기) > 실제 사용 예시

 

- 컬럼에 별명을 붙여 간편하게 지칭할 수도 있다

  방법은 간단하다 컬럼 옆에 as + 별명, 혹은 그냥 별명만 써도 된다

  문제는, 별명을 짓는거 자체가 헷갈린다 처음엔 아니지만 공부내용이 쌓일수록 헷갈리더라

 

- 별명이 한글이면 꼭 큰 따옴표를 붙이고 “별명” 

  영문이면 따옴표 없이 언더바 ord_no 혹은 큰 따옴표 붙이고 언더바 없이 “ord no”

 

실습 따라하다가 왜 안되지 하면 이거 틀렸을 확률 20%

 

3. 데이터 필터링 : where 

 

- 데이터에 조건(필터링)을 걸어줄 때 where을 사용한다

  이렇게 필터링을 씌우기 시작하면서 문장구조와 똑같이 쿼리를 생각하게 된다

  이런 부분들이 외국어를 배우는 것과 굉장히 비슷하다

select *

from customers

where age=21
select *

from customers

where gender=‘female’

 

- where 뒤에 문자면 작은 따옴표, 숫자는 그냥 쓰기

 

4. 비교연산, 논리연산, between, in, like

비교연산
= 같다
<> 다르다
> 크다
>= 크거나 같다
< 작다
<= 작거나 같다
논리연산
AND 그리고
OR 또는
NOT 아닌

 

between a and b

- between ; between a and b : a에서 b사이

in (A, B, C)

- in ; in (A, B, C) : A와 B와 C를 포함하는 데이터 

- like ; like ‘A%’ : A로 시작하는 모든 문자

           like ‘%A’ : A로 끝나는 모든 문자

           like ‘%A%’ : A가 포함된 모든 문자

           % 는 불특정 문자