20240605 TIL
조회한 데이터에 아무 값이 없다면 어떻게 처리하는가
1. 없는 값을 제외해주기
-MYSQL 에서는 사용할 수 없는 값일때 연산에서 제외 >> 0으로 간주
2. 다른 값을 대신 사용하기
- 다른 값이 있을 때 조건문 이용하기 : if(rating>=1, rating, 대체값)
- null 값일 때 : coalesce(age, 대체값)
조회한 데이터가 상식적이지 않은 값을 가지고 있다면
-조건문으로 값의 범위를 지정하기
조건문으로 가장 큰 값, 가장 작은 값의 범위를 지정해 줄 수 있음
SQL로 Pivot Table 만들어보기
-업무를 효율적으로 하기위해!
[실습1] 음식점별 시간별 주문건수 피벗 테이블 뷰 만들기
-15~20시 사이, 20시 주문건수 기준 내림차순
1. 먼저 음식점별, 시간별 주문건수 집계하기
2. 피벗테이블 구조 만들기
[실습2] 성별, 연령별 주문건수 피벗테이블 뷰 만들기
-나이는 10~59세 사이, 연령 순으로 내림차순
1. 성별, 연령별 주문건수 집계하기
2. 피벗테이블 구조 만들기
3. 결과물
이런 식으로 피벗테이블이 만들어져서 나옴
알고리즘 코드카타
2번 - 역순 정렬하기
동물 보호소에 들어온 모든 동물의 이름과 보호 시작일을 조회하는 SQL문을 작성해주세요. 이때 결과는 ANIMAL_ID 역순으로 보여주세요
select name,
datetime
from animal_ins
order by animal_id desc
3번 - 중복 제거하기
동물 보호소에 들어온 동물의 이름은 몇 개인지 조회하는 SQL 문을 작성해주세요. 이때 이름이 NULL인 경우는 집계하지 않으며 중복되는 이름은 하나로 칩니다
select count(distinct(name)) count
from animal_ins
where name is not null
4번 - 동물의 아이디와 이름
동물 보호소에 들어온 모든 동물의 아이디와 이름을 ANIMAL_ID순으로 조회하는 SQL문을 작성
select animal_id,
name
from animal_ins
order by animal_id
5번 - 동물 수 구하기
동물 보호소에 동물이 몇 마리 들어왔는지 조회
select count(1) count
from animal_ins
6번 - 동명 동물 수 찾기
동물 보호소에 들어온 동물 이름 중 두 번 이상 쓰인 이름과 해당 이름이 쓰인 횟수를 조회하는 SQL문을 작성. 이때 결과는 이름이 없는 동물은 집계에서 제외하며, 결과는 이름 순으로 조회
select name,
count
from
(
select name,
count(1) count
from animal_ins
where name is not null
group by name
) a
where count >= 2
order by name
7번 - 아픈 동물 찾기
동물 보호소에 들어온 동물 중 아픈 동물의 아이디와 이름을 조회하는 SQL 문을 작성. 이때 결과는 아이디 순으로 조회.
select animal_id,
name
from animal_ins
where intake_condition = 'sick'
order by animal_id
8번 - 상위 n개 레코드
동물 보호소에 가장 먼저 들어온 동물의 이름을 조회하는 SQL 문을 작성
select name
from animal_ins
order by datetime
limit 1
9번 - 최솟값 구하기
동물 보호소에 가장 먼저 들어온 동물은 언제 들어왔는지 조회하는 SQL 문을 작성
select min(datetime) '시간'
from animal_ins
10번 - 어린동물 찾기
동물 보호소에 들어온 동물 중 젊은 동물1의 아이디와 이름을 조회하는 SQL 문을 작성. 이때 결과는 아이디 순으로 조회
select animal_id,
name
from animal_ins
where intake_condition <> 'Aged'
order by animal_id
'✨Today I Learned > MySQL' 카테고리의 다른 글
SQL CODEKATA 55번 - 조건에 맞는 사용자 정보 조회하기 (0) | 2024.07.15 |
---|---|
사전캠프 10일차 - SQL 5주차 정리 / SQL 코드카타 11번~19번 (0) | 2024.06.07 |
사전캠프 - SQL 4주차 강의 정리 (0) | 2024.06.04 |
240603 사전캠프 7일차(SQL 3주차 강의 정리) (0) | 2024.06.03 |
사전캠프 6일차 - SQL 2주차 강의 정리 (0) | 2024.06.01 |