[45] 부트캠프 TIL - 본캠프 27일차

2024. 10. 1. 15:27부트캠프 TIL

728x90

1. 프로그래머스 이용한 sql과 알고리즘 문제 해결

1-1)  sql 문제 : 보호소에서 중성화한 동물

ㄴ 문제 : 보호소에 들어올 당시에는 중성화 되지않았고, 보호소를 나갈 당시에 중성화된 동물의 아이디와 생물 종, 이름을 조회해주세요.

아이디 순으로 조회해주세요.

※ 테이블 2개를 참조해서 조회.

※ 보호소에 들어올때 중성화 되지않은 - SEX_UPON_INTAKE = 'intact'가 포함된 데이터

※ 보호소를 나갈때 중성화가 된 - SEX_UPON_OUTCOME = 'Spayed', 'Neutered' 가 포함된 데이터

ㄴ 설명_1 : 조회할 컬럼 체크 - (아이디, 생물 종, 이름)

ㄴ 설명_2 : 2개 테이블 조인할 컬럼 체크 (동물아이디)

ㄴ 설명_3 : 보호소에 들어올때 중성화 되지않은 (LIKE 활용)

ㄴ 설명_4 : 보호소 나갈때 중성화된 (LIKE와 OR 활용)

ㄴ 설명_5 : 동물 아이디 순 조회 (ORDER BY 활용)

ㄴ 실제 쿼리 :

SELECT a.ANIMAL_ID, a.ANIMAL_TYPE, a.NAME
FROM ANIMAL_INS a LEFT JOIN ANIMAL_OUTS b ON a.ANIMAL_ID = b.ANIMAL_ID
WHERE a.SEX_UPON_INTAKE LIKE '%Intact%'
AND (b.SEX_UPON_OUTCOME LIKE '%Spayed%' OR  b.SEX_UPON_OUTCOME LIKE '%Neutered%')
ORDER BY a.ANIMAL_ID;

 

 

1-2) 알고리즘 문제 : 부족한 금액 계산하기

ㄴ 조건문에 따라 answer를 0을 만드는게 포인트이다.

ㄴ 문제설명에 있듯이 count만큼 배수를 더해준다 / 카운트만큼 구구단을 한다라고 생각하고 반복문으로 구성한다. 

ㄴ 그리고 가지고 있는 금액보다 합계금액이 크면 합계금액 - 보유금액을 진행하고 아닐땐 0원을 리턴한다.

728x90