IT Study

스파르타코딩클럽 [왕초보] 엑셀보다 쉬운, SQL 1주차

riverbend 2023. 5. 18. 14:26

SQL (Structured Query Language)

  • 테이블: 특정 데이터가 담긴 데이터베이스
  • 필드: 테이블을 구성하고 있는 필드별로 구분되는 데이터

 

(1) 테이블 보기

show tables;

 

(2) 테이블 전체 데이터 가져오기

select * from (table);

 

(3) 특정필드만 가져오기

select (field 1), (field 2), (field 3), (field 4) from (table);

 

(4) 테이블안에서 특정 필드에 조건을 걸어 추출하기

select * from (table)

where (field 1) = "특정문자" and (field 2) = 특정값(숫자); 

  • 조건이 추가 되면 and 사용
  • 찾는 데이터가 문자일 경우 큰따옴표(" ") 사용 숫자일 경우 불필요.

(5) Where 절과 자주 쓰이는 문법

조건 명령어 예시
같지 않음 != select * from orders
where course_title != "웹개발 종합반";
범위 between  and select * from orders
where created_at between "2020-07-13" and "2020-07-15";

(Tip) 7월 12일 부터 13일까지 데이터를 추출할 때는 14일까지 입력해야함
between "2020-07-1" and "2020-07-14";
코드에 “2020-07-12”로 입력하더라도 “2020-07-12 00:00:00”으로 인식
그렇기 때문에 between "2020-07-12" and "2020-07-13"으로 입력할 경우
between "2020-07-12 00:00:00" and "2020-07-13 00:00:00”으로 인식해 7월 12일 데이터만 출력
포함 in ( , , , ...) select * from checkins
where week in (1, 3);
패턴 (문자열 규칙) like select * from users
where email like '%daum.net';

where email like 'a%' email 필드값이 a로 시작하는 모든 데이터
where email like '%a' email 필드값이 a로 끝나는 모든 데이터
where email like '%co%' email 필드값에 co를 포함하는 모든 데이터
where email like 'a%o' email 필드값이 a로 시작 o로 끝난 모든 데이터
일부 데이터만
가져오기
Limit select * from orders
where payment_method = "kakaopay"
limit 5;
중복 데이터 제외하고 가져오기 Distinct( ) select distinct(payment_method) from orders;
숫자 세기 Count( ) select count(*) from orders
중복데이터 제외하고 숫자 세기 Count(Distinct( )) select count(distinct(name)) from users;

스파르타코딩클럽 [왕초보] 엑셀보다 쉬운, SQL 1주차