[Data analyst] Today I Learn/본 캠프 TIL (24.09.30~)

[TIL Day 3] (MySQL) case when 과 and 로 다수의 조건 걸기 (2024.10.02)

pjw250 2024. 10. 2. 15:36

### 문제1

SELECT u.game_account_id, u.game_actor_id, u.serverno

FROM users u

WHERE u.first_login_date > 2023-01-01;

 

### 문제2

SELECT u.first_login_date, u.ip_addr, u.`exp`, u.zone_id

FROM users u

WHERE u.level>10

AND (u.serverno != 1)

AND (u.etc_str2 = '레벨업 패키지' OR '시즌패스')

AND (u.etc_str1 = '상점에서 구매')

ORDER BY 1 DESC ,2 DESC;

 

> 다수의 조건을 걸 수 있다.

 

### 문제3

SELECT game_actor_id, level,

CASE WHEN LEVEL BETWEEN 1 AND 10 THEN '1~10Lv 이하'

WHEN LEVEL BETWEEN 11 AND 20 THEN '11~20Lv 이하'

WHEN LEVEL BETWEEN 21 AND 30 THEN '21~30Lv 이하'

WHEN LEVEL BETWEEN 31 AND 40 THEN '31~40Lv 이하'

WHEN LEVEL BETWEEN 41 AND 50 THEN '41~50Lv 이하'

WHEN LEVEL BETWEEN 51 AND 60 THEN '51~60Lv 이하'

WHEN LEVEL BETWEEN 61 AND 70 THEN '61~70Lv 이하'

WHEN LEVEL BETWEEN 71 AND 80 THEN '71~80Lv 이하'

WHEN LEVEL BETWEEN 81 AND 90 THEN '81~90Lv 이하'

ELSE '91~100Lv' END AS levelgroup, first_login_date

FROM users

ORDER BY first_login_date DESC;