개발 기록

SQL 문법 정리 본문

카테고리 없음

SQL 문법 정리

수염차 2021. 10. 30. 17:00
select * from users - > 테이블 전체 가져오기
where done =1 -> 조건에 맞는 데이터 가져오기
group by user_id -> 특정 필드로 묶기
order by count desc -> 특정 필드 기준으로 정렬 (오름차순은 안 써줘도 됨)
select * from a
inner join b on a.id = b.id
-> 교집합으로 두개 테이블 합치기

select * from a
left join b on a.id = b.id
-> 왼쪽에서 오른쪽으로 테이블 합치기 ( 값이 NULL 인 것도 나옴 ) ( 순서가 중요 )

(
select id,name from a
)
union all
(
select id,name from b
)
-> 아래로 붙이기

*with 절

with table1 as (
	select enrolled_id , count(*) from enrolleds_detail
	group by enrolled_id 
),
table2 as (
	select enrolled_id ,count(*) from enrolleds_detail
	where done = 1
	group by enrolled_id 
)

-> 임시로 테이블을 저장하고 불러 쓸 수 있다.

*subquery

where ( ), from ( ), select( ), 중간에도 쿼리를 넣어줄 수 있음

 

*case (조건문)

select name,
	cnt,
       (
       case when point > 100 then '좋아요!'
       		else '아쉬워요!' end
       ) as msg
   from table1

* 문자열 추출

SUBSTRING_INDEX(email,'@',-1)

SUBSTRING(email,1,6)
Comments