생활정보/IT 모바일

SQL Select Where 절 문법

금융지능 2022. 6. 17. 16:35


아래에 정리한 내용은 고용노동부 국비지원 교육 프로그램의 일환으로 스파르타 코딩 클럽에서 학습중인 내용을 정리한 것입니다. hrd net 내일배움카드를 소지하고 계신 직장인이시라면 국비지원금액과 더불어 스파르타코딩클럽의 환급정책을 통해 무료로 SQL 학습이 가능합니다.

 

SQL 학습이 궁금하신 분들은 아래 링크를 통해 확인해보시기 바랍니다. (친구추천 링크이며 아래 링크로 가입하여 수강신청을 하신분께는 5만원 할인쿠폰이, 제게도 5만원 선물이 주어집니다:-)

스파르타코딩클럽 바로가기


SQL Select Where 절 기본 문법

아래에는 기본적으로 숫자나 날짜, 문자 등을 조회함에 있어 가장 기본적인 활용도를 지니면서도 유용한 사실은 이게 거의 전부인(?) 문법들을 정리하였습니다.

 

> : ~ 이상

-------------------------------------------------

select * from orders

where point > 5000

-------------------------------------------------

 

(*) 유의할 점

숫자 관련하여 유의할 점은 숫자를 조회할 경우에는 따움표('값')을 입력해줄 필요가 없지만, 문자의 경우에는 따움표('값')을 필히 함께 입력해주어야 합니다. 해당 숫자가 문자인지 숫자인지 구분은 아래 입력되는 화면에서 최상단에 ABC 혹 123 으로 구분되어 있습니다. ABC는 문자, 123은 숫자임을 의미합니다.


!> : 같지 않음 조건

'!=' 에서 ! (느낌표)는 부정 (not)을 의미합니다. '='는 같음을 의미하니, '!='는 같지 않음을 의미합니다.

 

'웹개발 종합반이 아닌 값을 모두 불러와라'의 SQL문은 아래와 같습니다.

-------------------------------------------------

select from orders
where course_title != "웹개발 종합반";

-------------------------------------------------


between : 범위 조건

-------------------------------------------------

select * from orders

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

-------------------------------------------------


in : 포함 조건

1주차나 3주차에 해당하는 week 값을 불러와라

-------------------------------------------------

select * from checkins 
where week in (1, 3);

-------------------------------------------------


% : 패턴(문자열 규칙) 조건

-------------------------------------------------

select * from users

where email like '%daum.net'

-------------------------------------------------


기타 유용한 SQL 문법

limit : 일부 데이터만 가져오는 SQL

limit는 조회하고자하는 table의 모양이 어떻게 생겼는지 신속하게 확인하기 위한 경우 유용하게 사용할 수 있는 문법입니다. limit 없이 방대한 양의 table이 어떻게 생겼는지 확인하려면 시간이 상당히 많이 소요되는데 랜덤하게 해당 table이 어떤 field 들로 구성되어 있는지 확인할 때 사용합니다. limit 뒤에 숫자는 몇개의 행을 불러올 것인가에 대한 값을 의미합니다.

-------------------------------------------------

select * from users limit 10

-------------------------------------------------


distinct : field의 중복된 값은 제거하고 보는 SQL

-------------------------------------------------

select  distinct(payment_method) from orders

-------------------------------------------------

 

distinct를 활용하지 않을 경우 중복된 값이 함께 들어있어 명료하게 내가 보고자 하는 항목을 확인하기가 어렵습니다. distinct를 활용하면 아래와 같이 간단명료하게 값을 불러올 수 있습니다.


count : 해당 필드에 몇개의 값이 있는지 조회하는 SQL

-------------------------------------------------

select count(*) from orders
where payment_method = 'kakaopay'

-------------------------------------------------

select 다음 나오는 *값에 count와 괄호로 감싸줍니다. 그럼 아래와 같이 payment_method field에 몇개의 kakopay 값이 들어가 있는지 바로 조회할 수 있습니다.

 

distinct count 함께 활용

-------------------------------------------------

select count(distinct(name)) from users

-------------------------------------------------

먼저 users filed에서 어떤 name을 가진 회원들이 있는지 확인합니다. 중복된 값을 제거하고 보면 더 명료하게 볼 수 있으므로 distinct를 활용합니다. 그리고 중복된 값이 제거된 회원들이 총 몇명이나 있는지 확인하기 위해서는 distinct 값을 count로 다시금 감싸줍니다.


이상 SQL Select, Where절 등 문법을 정리하였습니다.