Coding Test 34

[SQL 프로그래머스] 조건별로 분류하여 주문상태 출력하기

[문제][해결]SELECT order_id, product_id, date_format(out_date,"%Y-%m-%d"),case when date_format(out_date,"%Y-%m-%d") '2022-05-01' then '출고대기' else '출고미정' end '출고여부'from food_orderorder by order_id[정리 및 새롭게 알게 된 점]1. Case when 문을 사용하여 조건들을 나열할 때에 날짜 비교시 date_format()함수를 써 date자료형과 varchar자료형을 비교하였다.2. date_format() 함수를 써 date자료형의 형식을 "%Y-%m-%d" 형식으로 바꾸어 주었다.

Coding Test 2024.06.26

[Python 프로그래머스] 행렬의 덧셈

[문제][해결]def solution(arr1, arr2): result = [] for x, y in zip(arr1, arr2): sum = [] for a, b in zip(x,y): sum.append(a+b) result.append(sum) return result[정리 및 새롭게 알게 된 점]먼저 zip함수를 통해 모든 행과 열이 들어있는 리스트를 반복문을 돌리고 각 행열 원소를 추출하였다. 그런 다음, 리스트를 담는 새로운 변수 sum을 만들고, 다시한번 zip함수를 사용하여 각 원소의 행과 열을 추출하는 반복문을 돌렸다. 그 후, 추출된 행과 열의 원소를 각각 더하고 sum변수에 append 시켜 새로운 행열원소 합..

Coding Test 2024.06.25

[SQL 프로그래머스] 조건에 맞는 도서와 저자 리스트 출력하기

[문제][해결]SELECT book_id,author_name, date_format(published_date, "%Y-%m-%d")from book b join author a on b.author_id = a.author_idwhere b.category = "경제"order by published_date[정리 및 새롭게 알게 된 점]먼저 author 테이블과 book 테이블을 uthor_id를 기준으로 inner join 한 다음 category가 "경제"인 부분만을 where절로 제한시키고 published_date 열은 date_format() 함수를 통해 "%Y-%m-%d" 형태로 나타내었다. 마지막으로 published_date를 기준으로 오름차순 정렬하여 문제를 해결하였다.

Coding Test 2024.06.25

[SQL] 보호소에서 중성화한 동물

[문제][해결]SELECT ai.animal_id, ai.animal_type, ai.namefrom animal_ins ai join animal_outs ao on ai.animal_id = ao.animal_idwhere ai.sex_upon_intake like "intact%" and (ao.sex_upon_outcome like "Neutered%" or ao.sex_upon_outcome like "Spayed%")[정리 및 새롭게 알게 된 점]1. join on 절을 통해 animal_id를 기준으로 animal_ins 테이블과 animal_outs 테이블을 조인하였고 2. where 절에서 like 절을 통해 sex_upon_intake가 intake로 시작하는 행과 sex_upon_ou..

Coding Test 2024.06.25

[SQL 프로그래머스] 상품 별 오프라인 매출 구하기

[문제][해결]SELECT product_code, sum(SALES_AMOUNT*PRICE) as SALESfrom PRODUCTinner join OFFLINE_SALE USING(product_id)group by product_codeorder by SALES DESC, PRODUCT_CODE ASC;[정리 및 새롭게 알게 된 점]1. 먼저 product 테이블과 offline_sale 테이블을 product_id 기준으로 조인한 다음2. group by 절로 product_code 기준으로 그룹을 묶어주고,3. product_code와 sum(sales_amount*price)를 select 하였다.4. 마지막으로 sales를 기준으로 내림차순, product_code를 기준으로 오름차순 정렬하..

Coding Test 2024.06.21

[Python 프로그래머스] 약수의 개수와 덧셈

[문제][해결]def solution(left, right): answer = 0 for i in range(left,right+1): count = 0 for n in range(1,i+1): if i % n == 0: count +=1 if count % 2 ==0: answer += i else: answer -= i return answer[정리 및 새롭게 알게 된 점]1. 첫번째 loop에서는 left부터 right까지의 수를 추출하였고 두번째 loop에서는 각각의 추출된 i에 대해 해당 약수의 개수를 구하는 for loop를 돌려 약수의 개수를..

Coding Test 2024.06.21

[SQL 프로그래머스] 카테고리 별 도서 판매량 집계하기

[문제][해결]SELECT b.category, sum(bs.sales) TOTAL_SALESfrom book b join book_sales bs on b.book_id = bs.book_idwhere year(bs.sales_date) = 2022 and month(bs.sales_date) = 1group by 1order by 1[정리 및 새롭게 알게 된 점]1. Where 절 안에서 year함수와 month함수를 통해 sales_date가 2022년 1월인 도서판매량을 추출하였고,2. join 을 통해 book 테이블과 book_sales 테이블을 조인한다음3. 카테고리별 도서 판매량 합산(sum(bs.sales)을 select하였다.

Coding Test 2024.06.20