SQL - Select query

Walter Mitty·2022년 5월 23일
0

SQL

목록 보기
1/15

Select Query

:데이터베이스에 명령을 내리는 것으로 여기서 select가 붙어서 데이터 베이스에서 '데이터를 선택해서 가져오겠다'라는 의미이다.

  • 테이블 보기
show tables
  • aaa 테이블의 데이터 가져오기
select * from aaa
  • aaa 테이블의 특정 필드 bbb만 가져오기
select bbb from aaa

where 절

: select query문으로 가져올 데이터에 조건을 걸어주는 것

예1) orders 테이블에서 결제수단이 카카오페이인 데이터만 가져와줘

select * from orders
where payment_method = 'kakaopay'

예2 point_users 테이블에서 포인트가 5000점 이상인 데이터만 가져와줘

select * from point_users
where point >= 5000

예3) orders 테이블에서 주문한 강의가 앱개발 종합반이면서, 결제수단이 카드인 데이터만 가져와줘

select * from orders
where course_title = '앱개발 종합반' and payment_method = 'CARD'

where 절과 함께 자주 쓰이는 문법

  • 같지 않음 !=
where course_title != '웹개발 종합반'
  • 범위 (날짜나 숫자) between
where created_at between '2020-07-12' and '2020-07-13'
  • 포함 in ( )
    1,3 주차 사람들의 테크인메시지만 보여줘
where week in (1,3)
  • 패턴 **like '%'
    :%의 이전 내용은 상관없이 %의 이후 내용 중 ~로 끝나는 것만 꺼내와줘
where email like '%daum.net'

다른건 구글에 how to use like in sql 로 검색해보기!

  • 일부 데이터만 가져오기 limit
    :예제에선 5개만 가져와보기
select * from orders
where payment_method = 'kakaopay'
limit 5
  • 중복 데이터는 제외하고 가져오기 distinct
    :orders 테이블 중 payment_method가 무슨 종류가 있는지 알고 싶을 때
select distinct(payment_method) from orders
  • 몇 개인지 숫자 세보기 count
select count(*) from orders
  • distinct + count 같이 써보기
    예제: 스파르타 회원 중 성(family name)씨가 몇개인지 궁금하다
select distinct(name) from users

하면 성씨 종류들이 쭉 나옴

select count(distinct(name)) from users

하면 몇개의 성씨가 있는지 나온다.

Group by 기능 살펴보기

0개의 댓글