SQL

SQL 공부 시작 1주차💡 MYSQL SELECT문 쿼리

JAVABOZA 2023. 6. 1. 23:48

먼저 데이터베이스란?

=> 여러 사람들이 같이 사용할 목적으로 데이터를 담는 통이라 생각하자!!

 

더보기

<모든 데이터베이스는 CRUD 해당하는 기능 지원>

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

R(Read)     :  저장된 데이터를 읽어오는 것 의미

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

D(Delete)   :   저장된 데이터를 삭제

 

 

SQL

은 데이터베이스에 요청(Query)을 날려서 원하는 데이터를 가져오는 것을 도와주는 언어

 

 

 

SELECT 쿼리문이란?

먼저 쿼리문이란 쿼리는 질의라는 의미를 가지고 있다.

데이터베이스에 명령을 내리는 것을 의미

💡 SELECT 쿼리문은 데이터베이스에서 '데이터를 선택해서 가져오겠다!' 의미 

더보기

데이터베이스 테이블 보기

SHOW tables;

 

더보기

orders 테이블의 데이터 가져오기

SELECT * FROM orders;

 

더보기

orders 테이블의 특정 필드만 가져오기

SELECT create_at, course_title, payment_method, email FROM orders;

 

 

SELECT 문에서 WHERE 절을 쉽게 볼 수 있다.

WHERE 절이란?

: SELECT 쿼리문으로 가져올 데이터에 조건을 걸어 주는 의미를 가지고 있다.

 

예로들자면~

 

orders 테이블에서 결제수단이 카카오페이인 데이터 가져와요~

라고 했다. 그렇다면 쿼리를어떻게 짜야할까?

 

더보기

SELECT * FROM orders

WHERE payment_method = "kakaopay";

 

위의 쿼리로 작성하면 된다

 

여기서 주의 할 것은 "kakaopay" 컬럼 자리에 kakaopay라고 적으면 

[Unknown column 'kakaopay' in 'where clause'] 에러문구를 볼 수 있을 것이다.

해석하면  = where 절에 있는 kakaopay라는 컬럼은 없다! 라는 의미이다.

kakaopay 라는 글자를 컬럼(필드명)으로 인식한것이다.

 

+++또+++

where에 여러 조건을 걸려면 어떻게 하느냐~

더보기

SELECT * FROM orders

WHERE course_title = "웹개발 종합반" and payment_method = "kakaopay";

위의 쿼리를 확인하면

and 접속사를 볼 수 있다. and로 여러 조건을 이어서 추가할 수 있다.

 


Q : 포인트가 20000점 보다 많은 유저만 뽑아보기!

더보기

A  : 

     SELECT * FROM point_users

      WHERE point > 20000;


Q : 성이 황씨인 유저만 뽑아보기

더보기

A :

     SELECT * FROM users

      WHERE name = '황**';


Q : 웹개발종합반이면서 결제수단이 CARD  인 주문건만 뽑아보기!

더보기

A : 

    SELECT * FROM orders

     WHERE payment_method = 'CARD' and course_title = '웹개발 종합반';


 

 

SELECT문에서 '범위'  조건으로 데이터 뽑아보기

더보기

SELECT * FROM orders

WHERE created_at BETWEEN "2020-07-13" AND "2020-07-15";

BETWEEN ~ AND  으로 원하는 범위를 잡아서 뽑을 수 있다.

 

 

SELECT문에서 '포함' 조건으로 데이터 뽑아보기

더보기

SELECT * FROM checkins

WHERE week in (1,3);

week 컬럼에 in 조건으로 데이터를 가져올 수 있다.