데일리루틴(알고리즘)

10/23 SQL문제 풀이

김호진02 2024. 10. 23. 15:13

11 여러 기준으로 정렬하기

SELECT ANIMAL_ID,NAME,DATETIME
FROM ANIMAL_INS
ORDER BY NAME,DATETIME DESC

 

12 이름에 el이 들어가는 동물 찾기

 

SELECT ANIMAL_ID,NAME
FROM ANIMAL_INS
WHERE UPPER(NAME) LIKE '%EL%'
AND ANIMAL_TYPE='Dog'
ORDER BY NAME;

 

UPPER(컬럼명) : 데이터를 대문자로 바꿈.

LOWER(컬럼명) : 데이터를 소문자로 바꿈

 

13 나이 정보가 없는 회원 수 구하기

 

SELECT COUNT(USER_ID) USERS
FROM USER_INFO
WHERE AGE IS NULL;

 

14 가장 비싼 상품 구하기

SELECT MAX(PRICE) MAX_PRICE
FROM PRODUCT

 

15 NULL 처리하기

 

SELECT ANIMAL_TYPE, COALESCE(NAME,'No name') NAME, SEX_UPON_INTAKE
FROM ANIMAL_INS

 

COALESCE(NAME,'No name') : NAME이 NULL이면 'No name'으로 출력

 

16 경기도에 위치한 식품창고 목록 출력하기

SELECT WAREHOUSE_ID, WAREHOUSE_NAME,ADDRESS,COALESCE(FREEZER_YN,'N') FREEZER_YN
FROM FOOD_WAREHOUSE
WHERE ADDRESS LIKE '경기도%'
ORDER BY WAREHOUSE_ID;

 

17 강원도에 위치한 식용창고 목록 출력하기

SELECT FACTORY_ID,FACTORY_NAME,ADDRESS
FROM FOOD_FACTORY
WHERE ADDRESS LIKE '강원도%'
ORDER BY FACTORY_ID;

 

18 DATETIME에서 DATE로 형 변환

SELECT ANIMAL_ID, NAME,
DATE_FORMAT(DATETIME,'%Y-%m-%d') '날짜'
FROM ANIMAL_INS;

 

19 흉부외과 또는 일반외과 의사 목록 출력하기

SELECT DR_NAME,DR_ID,MCDP_CD, DATE_FORMAT(HIRE_YMD,'%Y-%m-%d') HIRE_YMD
FROM DOCTOR
WHERE MCDP_CD IN ('CS','GS')
ORDER BY HIRE_YMD DESC,DR_NAME

 

20 가격이 제일 비싼 식품의 정보 출력하기

SELECT PRODUCT_ID,PRODUCT_NAME,PRODUCT_CD,CATEGORY, PRICE
FROM FOOD_PRODUCT 
ORDER BY PRICE DESC
LIMIT 1;