-
스파르타 코딩 클럽 '[왕초보] 엑셀보다 쉬운, SQL' 강의 문법 정리리뷰 2023. 2. 17. 23:27
기본 구조
: Select 필드명 from 테이블명
범위 조건
: where 필드명 Between A and B
예) Select name from orders where age between 15 and 20
포함 조건
: where 필드명 in (값1, 값2, ... 값n)
예) SELECT name FROM kids WHERE age IN (2, 4, 6, 8)
패턴(조커) 조건
: where 필드명 like '%값'
-> %는 모든 문자열을 대체할 수 있으며 어디든지 위치할 수 있다.
예) select * from users where email like '%naver.com'
정해진 개수만 불러오기
: limit 숫자
예) Select * from users limit 5
중복 제거하고 불러오기
: distinct(필드명)
예) select distinct(name) from users
필드 개수 세기
: count(필드명)
예) select count(name) from orders
특정 필드로 묶기
: group by 필드명
예) select name, count(*) from users group by name
반올림
: round(값, 자릿수)
예) select round(age, 2) from users group by name
출력되는 값 정렬하기
: order by 필드명
예) select name, age from users order by age
-> 내림차순으로 정렬하려면 order by 필드명 desc
예) select name, age from users order by age desc
두 테이블을 하나로 묶기 - inner join
: from 테이블1 inner join 테이블2 on 테이블1.필드명 = 테이블2.필드명
예) select * from orders o inner join users u on o.user_id = u.user_id
두 테이블을 하나로 묶기 - left join
: from 테이블1 left join 테이블2 on 테이블1.필드명 = 테이블2.필드명
예) select * from users u left join point_users pu on u.user_id = pu.user_id
결과를 합치기 - union all
: (A쿼리) union all (B쿼리)
예) (Select * from orders) union all (select * from orders2)
문자열 쪼개기 - 문자 기준
: substring_index(필드명, ‘기준이 되는 문자열’ 기준 왼쪽이면 1 오른쪽이면 -1)
예) substrin_index(email, '@', -1) = 'asdf@naver.com'이 'naver.com'이 됨
문자열 쪼개기 - 글자 기준
: substring(필드명, 시작문자, 문자 수)
예) substring(created_at, 1, 10) -> '2020-07-13 13:12:14'가 '2020-07-13'이 됨
조건에 따라 레코드 쪼개기
: case when 필드명 + 조건 then '지칭' else '지칭2' end
예) select user_id, point, (case when point > 10000 then '1만 이상' when point > 5000 then '5천 이상' else '5천 미만' end) as lv from point_users
'리뷰' 카테고리의 다른 글
패스트캠퍼스 하용호님의 강의 후기 (0) 2021.01.28