카테고리 없음

[TIL 3] SQL 퀴즈

LHJ_ 2024. 11. 19. 15:52

3) 상품 주문이 들어왔으니 주문을 처리해봅시다.

9.

SELECT coustomer_id 
FROM orders
WHERE amount>1;

 => ; 빼먹지 않기

 

10.

SELECT *
FROM orders
WHERE amount>1
AND order_date>'2023-11-02';

=>;빼먹지 않기, 행 나누기, *=모든 컬럼

 

11.

SELECT *
FROM orders
WHERE amount<3
AND shipping_fee>15000;

 

12.

SELECT shipping_fee
FROM orders
ORDER BY shipping_fee DESC;

 

 

 

4) 이제 놀만큼 놀았으니 다시 공부해봅시다!

13.

SELECT name
, track
FROM sparta_students;

 

 

14.

SELECT *
FROM sparta_students
WHERE NOT  track = 'Unity';

=> 문자열을 사용할 때는 '(작은 따옴표) 잊지 말기

 

15.

SELECT *
FROM sparta_students
WHERE enrollment_year = 2021
OR enrollment_year = 2023;

 

16.

SELECT enrollment_year
FROM sparta_students
WHERE track = 'Node.js'
AND grade = 'A';

 

 

5) 공부하다 보니 팀 프로젝트 시간이 왔어요!

17.

SELECT name
FROM team_projects
WHERE aws_cost>=4000;

 

18.

SELECT *
FROM team_projects
WHERE start_date
BETWEEN '2022-01-01'
AND '2022-12-31';

 

19. ...?? 오늘이 2023-03-18이라 가정

SELECT *
FROM team_projects
WHERE start_date>curdate()
AND end_date<curdate();

=> curdate()는 현재 서버에서 SQL 문이 실행될 때 시간대 시계의 판독값을 기준으로 날짜를 반환 (현시간 데이터 값 불러옴)

     getdate() 또한 마찬가지 / 위의 둘은 날짜만 출력

     sysdate() 날짜와 시간까지 출력(시분초)

20.

SELECT *
DATEDIFF (dd, start_day, end_day)
FROM team_projects;



SELECT*
DATEDIFF(d, '2023-01-01', '2023-01-07')
DATEDIFF(d, '2023-03-05', '2023-03-22')
DATEDIFF(d, '2023-11-20', '2023-11-30')
DATEDIFF(d, '2022-07-01', '2022-07-30')
FROM team_projects; --직접 값을 입력하여 계산하는 코드가 있을텐데..... 아직 모르겠음

 

 

6) 팀 프로젝트 열심히 했으니 다시 놀아볼까요?!

21.

SELECT *
FROM lol_users
RANK() OVER (ORDER BY rating DESC);

=> RANK() : 중복 순위가 있으면 해당 순번 만큼 건너뛰고 순번 부여

     DENSE_RANK() : 중복 순위가 있어도 차례대로 순번 부요

 

22.

SELECT name
MAX(join_date)
FROM lol_users;

 

23.

SELECT *
FROM lol_users
ORDER BY rating DESC
GROUP BY region, rating; --지역별로

=> order by와 group by과 함께 사용할 때의 주의

 

 

24.

SELECT *
AVG (rating)  --집계함수
FROM lol_users
GROUP BY region;  --지역별로

=> GROUP BY : 같은 값을 가진 행을 그룹짓는 SQL 명령어

     집계 함수와 함께 사용 (COUNT(), MAX(), MIN(), SUN(), AVG() 등)