-
SQL 3. SQL 문법_총정리SYNC 기술면접 준비 2023. 11. 13. 23:00



use practice;
/*데이터 조회*/
-- 1.customer 테이블의 가입년도 멸 및 지역별 회원수를 조회하는 것
-- from 절 / group by 절 / select 절 / year 및 count함수 활용
select * from customer;
select year(join_date), addr, count(mem_no) as 회원수
from customer
group by year(join_date), addr;
-- 2. 1번 명령어에서 성별이 남자회원 조건을 주가한 뒤, 회원수가 50명 이상인 조건을 추가하기
select year(join_date), addr, count(mem_no) as 회원수
from customer
where gender = 'man'
group by year(join_date), addr
having count(mem_no) >= 50;
/* 3. (2) 명령어에서 회원수를 내림차순으로 정렬하시오.*/
/* ORDER BY절 활용 */
select year(join_date), addr, count(mem_no) as 회원수
from customer
where gender = 'man'
group by year(join_date), addr
having count(mem_no) >= 50
order by count(mem_no) desc;
/***************데이터 조회(SELECT) + 테이블 결합(JOIN) ***************/
/* sales 테이블 기준으로 product 테이블을 left join */
select *
from sales as a
left join product as b
on a.product_code = b.product_code;
/* 2. (1)에서 결합된 테이블을 활용하여, 브랜드별 판매수량을 구하시오. */
/* GROUP BY절 / SUM 함수 활용*/
select b.brand, sum(sales_qty) as 판매수량
from sales as a
left join product as b
on a.product_code = b.product_code
group by b.brand;
/* 3. CUSTOMER 및 SALES 테이블을 활용하여, 회원가입만하고 주문이력이 없는 회원수를 구하시오.*/
/* LEFT JOIN 활용 */
select count(a.mem_no)
from customer as a
left join sales as b
on a.mem_no = b.mem_no
where b.mem_no is null;
/***************데이터 조회(SELECT) + 테이블 결합(JOIN) + 서브 쿼리(Sub Query)***************/
/* 1. FROM절 서브쿼리를 활용하여, SALES 테이블의 PRODUCT_CODE별 판매수량을 구하시오.*/
/* FROM절 서브쿼리 / SUM 함수 활용 */
select *
from(
select product_code as 상품코드, sum(sales_qty) as 판매수량
from sales
group by product_code
) as a;
/* 2. (1) 명령어를 활용하여, PRODUCT 테이블과 LEFT JOIN 하시오.*/
/* LEFT JOIN 활용 */
SELECT *
FROM (
SELECT PRODUCT_CODE ,SUM(SALES_QTY) AS 판매수량
FROM SALES
GROUP BY PRODUCT_CODE
)AS A
LEFT JOIN PRODUCT AS B
ON A.PRODUCT_CODE = B.PRODUCT_CODE;
/* 3. (2) 명령어를 활용하여, 카테고리 및 브랜드별 판매수량을 구하시오.*/
/* GROUP BY절 / SUM 함수 활용*/
SELECT category as 카테고리, brand as 브랜드, count(판매수량) as 판매수량
FROM (
SELECT PRODUCT_CODE ,SUM(SALES_QTY) AS 판매수량
FROM SALES
GROUP BY PRODUCT_CODE
)AS A
LEFT JOIN PRODUCT AS B
ON A.PRODUCT_CODE = B.PRODUCT_CODE
group by category, brand;'SYNC 기술면접 준비' 카테고리의 다른 글
SQL 4. SQL 활용_연산자 및 함수(2) (1) 2023.11.14 SQL 4. SQL 활용_연산자 및 함수(1) (1) 2023.11.13 SQL 3. SQL 문법_SUB QUERY (1) 2023.11.13 SQL 3. SQL 문법_JOIN (0) 2023.11.13 SQL 3. SQL 문법_SELECT (0) 2023.11.13