[Programmers] 276013번 - Python 개발자 찾기 [MySQL]
문제 링크 1. 문제 풀이 OR 연산자로 스킬 컬럼에 대해 하나라도 만족하는지 찾으면 된다. 2. 쿼리 SELECT ID, EMAIL, FIRST_NAME, LAST_NAME FROM DEVELOPER_INFOS WHERE SKILL_1 = 'Python' OR SKILL_2 = 'Python' OR SKIL...
문제 링크 1. 문제 풀이 OR 연산자로 스킬 컬럼에 대해 하나라도 만족하는지 찾으면 된다. 2. 쿼리 SELECT ID, EMAIL, FIRST_NAME, LAST_NAME FROM DEVELOPER_INFOS WHERE SKILL_1 = 'Python' OR SKILL_2 = 'Python' OR SKIL...
문제 링크 1. 문제 풀이 SUM 집계 함수를 활용하면 총합을 구할 수 있다. 2. 쿼리 SELECT SUM(PRICE) AS TOTAL_PRICE FROM ITEM_INFO WHERE RARITY = 'LEGEND';
문제 링크 1. 문제 풀이 두 원 사이의 공간에 $x$, $y$ 좌표가 모두 정수인 점의 개수를 찾는 문제로 중심이 원점인 두 원이기 때문에 한 쪽 사분면에 대해서 판단한 후 $4$ 배를 해주면 전체 점의 개수를 구할 수 있다. 1사분면에 대해 정수인 점의 개수를 판단했는데 $x$ 좌표를 $1$ 부터 $1$ 씩 증가시키며 피타고라스 정리로...
문제 링크 1. 문제 풀이 LIKE 연산자와 OR 연산자를 활용해서 특정 옵션이 하나라도 있는지 찾았다. 2. 쿼리 SELECT CAR_TYPE, COUNT(*) AS CARS FROM CAR_RENTAL_COMPANY_CAR WHERE OPTIONS LIKE '%통풍시트%' OR OPTIONS LIKE '%열선시트...
문제 링크 1. 문제 풀이 AVG 집계 함수로 평균 일일 대여 요금을 구하고, ROUND 함수로 반올림을 해줬다. 2. 쿼리 SELECT ROUND(AVG(DAILY_FEE)) AS AVERAGE_FEE FROM CAR_RENTAL_COMPANY_CAR WHERE CAR_TYPE = 'SUV';
문제 링크 1. 문제 풀이 재구매한 물건은 USER_ID와 PRODUCT_ID의 쌍이 동일한 데이터가 2개 이상 존재해야 한다. 따라서 두 컬럼을 기준으로 그룹핑을하고 HAVING 절로 2개 이상인 그룹만 필터링했다. 2. 쿼리 SELECT USER_ID, PRODUCT_ID FROM ONLINE_SALE GROUP BY USER...
문제 링크 1. 문제 풀이 만원 단위로 가격대 별로 상품 개수를 구해야 한다. 0원부터 9,999원까지는 0, 10,000원부터 19,999원까지는 10,000 이렇게 그룹핑하고 표시해야 하는데 이는 DIV 연산자로 10,000으로 나눈 몫을 통해 그룹핑을 할 수 있고 여기에 10,000을 곱해서 만원 단위로 표시할 수 있다. 2. 쿼...
문제 링크 1. 문제 풀이 LEFT 함수를 사용해서 상품코드 앞 2자리를 추출해서 그룹핑을 해줬다. 2. 쿼리 SELECT LEFT(PRODUCT_CODE, 2) AS CATEGORY, COUNT(*) FROM PRODUCT GROUP BY CATEGORY ORDER BY CATEGORY;
문제 링크 1. 문제 풀이 IFNULL 함수를 활용해 NULL일 경우 N을 출력하면 된다. 2. 쿼리 SELECT WAREHOUSE_ID, WAREHOUSE_NAME, ADDRESS, IFNULL(FREEZER_YN, 'N') FROM FOOD_WAREHOUSE WHERE ADDRESS LIKE '경기...
문제 링크 1. 문제 풀이 $A$ 시 $B$ 분 $C$ 초에서 $D$ 초 후의 시각을 찾는 문제로 시는 $24$ 단위로, 분과 초는 $60$ 단위로 다음 단위로 올림이 되는 점을 활용해서 몫과 나머지 연산으로 해결했다. 2. 코드 1. 풀이 [Java] import java.io.*; import java.util.*; pub...