미소를뿌리는감자의 코딩

[항해99 SQL] 1주차 본문

강의수강/[SQL]

[항해99 SQL] 1주차

미뿌감 2024. 1. 25. 20:53
728x90

이제 SQL을 시작하려고 한다.

안배워본 부분이라 약간의 설렘 + 긴장이 있는 것 같다.

 

통상적으로 모든 데이터 베이스는 CRUD 에 해당하는 기능을 지원한다.

 

C (Create): 데이터 생성을 의미함.

R (Read): 저장된 데이터를 읽어오는 것을 의미 ** 이 부분을 중점적으로 다룰 것임.

U (Update): 저장된 데이터를 변경

D (Delete): 저장된 데이터를 삭제하는 것을 의미

 

table, field

table 은 데이터가 담긴 엑셀 시트와 동일하다.

field는 각각 세로 줄 같은 느낌이다.

 

Excute SQL Query 의 경우 mac 에서는 control + enter를 하면 된다.

 

select * from orders

where course_title='앱개발 종합반'and payment_method = 'CARD'

 

SQL에서는 신기했던 것이, 맞는지 비교를 할 때, ==이 아니라 = 을 사용한다는 점이다. 

 

기본적인 사용법

show tables

 

select * from courses

where ~~~~

 

 

범위 조건

select * from orders o

where created_at between "2020-07-13" and "2020-07-15"

 

범위를 나타낼 때는 between ~~ and로 나타낸다. and 뒤에 나타낸 범위는 포함되지 않는다.

따라서 위 쿼리는 7월 13일 과 7월 14일에 형성된 데이터들을 나타내라는 뜻이 된다.

약간 for i in range(1,n,1) 일 때, n은 포함되지 않는 느낌과 비슷한 것 같다.

 

포함 조건 걸어보기

select * from checkins

where week in (1, 3);

1, 3주차에 해당하는 부분을 나타내도록 한 쿼리이다.

in ()를 사용함을 할 수 있다. 2개 뿐만 아니라 여러개를 입력값으로 받을 수 있다.

 

패턴의 경우

select * from users

where email like '%daum.net';

 

%는 앞에 무엇이 있든, daum.net으로 끝나는 것을 찾으라는 것과 같다.

즉, '2%naver.com' 이면, 2로 시작하며, naver.com으로 끝나는 email을 찾으라는 뜻과 같다.

 

이외 유용한 문법 배워보기

1) limit

limit 5; 이런식으로 적게 되면 5개만 실험적으로 내놔보아라~ 요런 느낌이다.

2) distinct

중복적인 데이터를 제외하고 가져오도록 하는 방법이다.

select distinct(payment_method) from orders;

이런식으로 적게 되며 약간 python 의 set과 비슷한 느낌이다.

 

3) count

이것은 뒤에서도 많이 쓰일 느낌의 문법이다. 그냥 말 그대로 몇개인지 세는 것이다.

728x90

'강의수강 > [SQL]' 카테고리의 다른 글

[항해99 SQL] 문법 총 정리  (0) 2024.01.26
[항해99 SQL] 4주차  (2) 2024.01.26
[항해99 SQL] 3주차  (1) 2024.01.26
[항해99 SQL] 2주차  (1) 2024.01.25