개발 기록
SQL 문법 정리 본문
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