SQL
스파르타 코딩클럽(부트캠프) SQL 입문 1장
H.S-Backend
2024. 3. 8. 17:58
반응형
SQL 이란 - 데이터베이스와 대화를 하기 위한 언어
TIP) SQL이라는 언어를 이용 또는 사용하여 데이터베이스에 요청한다 = "Query"
데이터베이스란 - "데이터가 저장되어 있는 큰폴더"
테이블이란-"데이터베이스" 안에 파"
테이블은 엑셀과 유사한 데이터를 가지며, 각 열을 '컬럼' 혹은 '필드'라 칭한다.
테이블 1 -food_orders : 음식 주문 정보 테이블
- order_id : 주문 번호
- customer_id : 고객번호
- restaurant_type : 음식 종류
- price : 음식 가격
- quantity : 주문 수량
- day_of_the week : 주말 구분
- rating : 음식점 평점
- food_preparation_time : 음식 준비 시간 (분)
- delivery_time : 음식 배달 시간 (분)
테이블 2 payments : 결제정보테이블
- order_id : 주문 번호
- pay_type : 결제수단
- vat : 수수료
- date : 결제 일자 (년-월-일)
- time : 설제 시간 (시:분:초)
- 테이블 3 customers : 고객정보테이블
- customer_id : 고객 번호
- name : 고객 이름
- email : 이메일 주소
- gender : 성별
- age : 나이
SELECT, FROM = SQL의 가장 기본 구조
SELECT : 데이터를 가져오는 명령어.
FROM : 데이터를 가져올 테이블을 특정해 주는 문법.
* : 모든 컬럼을 가져와 준다.
기본 문법
select *
from food_orders
1. payments 테이블 데이터 조회
select *
from payments
2. customers 테이블 데이터 조회
select *
from customers
원하는 컬럼 선택
select 컬럼 1, 컬럼 2
from 테이블
ex)
select order_id, restaurant_name
from food_orders
컬럼에 별명(alias) 주기
별명 지정방법
1. 컬럼 1 as 별명 1.
2. 컬럼 2 별명 2
구분 | 영문, 언더바 | 특수문자, 한글 |
방법 | 별명만 적는다. | "별명"으로, 큰따옴표 안에 적어준다. |
예시 | ord_no | "ord no" "주문번호" |
ex )
select order_id as ord_no,
restaurant_name "식당 이름"
from food_orders
WHERE 이란 : 필터링의 기초 문법
WHERE의 구조
select *
form 테이블
where 필터링 조건
ex)
select *
from customers
where age=21
로 진행을 하면 21살인 사람을 필터링해서 값을 보여준다.
필터링은 문자에도 사용 가능
ex)
select*
from customers
where gender='female'
작은따옴표를 사용하여 표시
같은, 큼, 작은 등의 조건
비교연산자 | 의미 | 예시 |
= | 같다 | age=21 gender='female' |
<> | 같지 않다(다르다) | age<>21 gender<>'female' |
> | 크다 | age>21 |
>= | 크거나 같다 | age>=21 |
< | 작다 | age<21<-= |
<= | 작거나 같다 | age<=21 |
ex)
select *
from customers
where age <21
로 조회하면 21세 미만인 고객유형별 데이터가 정리되어 나온다.
다양한 조건의 종류
BETWEEN : A와 B 사이
IN : '포함' 하는 조건 주기
LIKE : 완전히 똑같지는 않지만 비슷한 값을 조건으로 준다.
논리연산
ex ) '나이가 20세 이상', '여성 고객' 조건
논리연산자 | 의미 | 예시 |
AND | 그리고 | age>=20 and geder='female' 나이가 20세 이상이고, 여성 |
OR | 또는 | age>=20 or gender='female' 나이가 20세 이상이거나 여성 |
NOT | 아닌 | not gender='female' 여성이 아닌 |
반응형