문제 1
date 컬럼이 2023-01-01 보다 큰 날짜의 game_account_id, game_actor_id, serverno를 추출해주세요.
select game_account_id
, game_actor_id
, serverno
from users
where date > '2023-01-01'
문제 2
조건1) leverl 컬럼이 10초과이고
조건2) severno컬럼이 1이 아니며
조건3) 아이템 이름 컬럼이 레벨업 패키지 또는 시즌패스이고
조건4) 아이템 획득경로가 상점에서 구매한 경우
date, ip_addr, exp, zone_id 를 추출하고 결과값을 date 기준 내림차순으로 정렬하여 추출해주세요.
select date
, ip_addr
, exp
, zone_id
from users
where level > 10
and serverno != 1
and etc_str2 = '레벨업 패키지' or '시즌패스'
and etc_str1 = '상점에서 구매'
order by date desc
문제3
case when 구문을 사용하여 레벨구간을 아래와 같이 구분해주시고, 컬럼이름을 'levelgroup'으로 설정해주세요. game_actor_id, level, levelgroup, date 컬럼을 추출해주시고, date를 기준으로 내림차순 정렬해주세요. 결과값은 아래와 같아야 합니다.
레벨구간 1~10Lv 이하/ 11~20Lv 이하/ 21~30Lv 이하 /31~40Lv 이하/ 41~50Lv 이하/ 51~60Lv 이하/ 61~70Lv 이하/ 71~80Lv 이하/ 81~90Lv 이하/ 91~100Lv
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'
when level between 91 and 100 then '91~100Lv' end levelgroup
, date
from users
order by 4 desc
문제4
date 컬럼을 yyyy-mm 형식의 월 형태로 바꾸고, 컬럼이름을 m 으로 지정해주세요.
game_account_id, game_actor_id 를 추출하되, 월을 기준으로 오름차순, 월이 같을 경우 game_actor_id 를 내림차순으로 정렬해주세요. 결과값은 아래와 같아 야 합니다.
select date_format(date, '%Y-%m') m
, game_account_id
, game_actor_id
from users
order by m
, game_actor_id desc
'내배캠(개인과제) > SQL' 카테고리의 다른 글
[라이브세션] 데이터와 친해지는 SQL 3회차 (0) | 2024.06.27 |
---|---|
[라이브세션] 데이터와 친해지는 SQL 2회차 (0) | 2024.06.27 |