[프로그래머스] 서울에 위치한 식당 목록 출력하기 | 오라클
·
📝 Coding Test/SQL
문제자동차 대여 기록 별 대여 금액 구하기풀이SELECT A.REST_ID, A.REST_NAME, A.FOOD_TYPE, A.FAVORITES, A.ADDRESS, B.REVIEW_SCOREFROM REST_INFO A JOIN (SELECT REST_ID, ROUND(AVG(REVIEW_SCORE), 2) REVIEW_SCORE FROM REST_REVIEW GROUP BY REST_ID) BON A.REST_ID = B.REST_IDWHERE A.ADDRESS LIKE '서울%'ORDER BY REVIEW_SCORE DESC, FAVORITES DESC;REST_ID와 리뷰점수 평균 두 개의 컬럼을 갖는 인라인 뷰를 만들어 조인하여 풀이하였습니다.
[프로그래머스 Lv0] 숨어있는 숫자의 덧셈 (2) | 자바
·
📝 Coding Test/Programmers Lv0
문제숨어있는 숫자의 덧셈 (2)풀이class Solution { public int solution(String my_string) { int answer = 0; String[] strArr = my_string.replaceAll("[a-zA-Z]", " ").split(" "); for(String str : strArr) { if(!str.equals("")) answer += Integer.parseInt(str); } return answer; }}모든 알파벳을 제거해야하는데 replaceAll("[a-zA-Z]", " ")를 사용하여 모든 알파벳을 제거할 수 있습니다.
[프로그래머스] 그룹별 조건에 맞는 식당 목록 출력하기 | 오라클
·
카테고리 없음
문제그룹별 조건에 맞는 식당 목록 출력하기풀이SELECT A.MEMBER_NAME, B.REVIEW_TEXT, TO_CHAR(B.REVIEW_DATE, 'YYYY-MM-DD') REVIEW_DATEFROM MEMBER_PROFILE A JOIN REST_REVIEW B ON A.MEMBER_ID = B.MEMBER_IDWHERE A.MEMBER_ID = ( SELECT MEMBER_ID FROM ( SELECT MEMBER_ID, COUNT(*) FROM REST_REVIEW GROUP BY MEMBER_ID ORDER BY COUNT(*) DESC ) WHERE ROWNUM = 1)ORDER BY REVIEW_DATE, RE..
[프로그래머스] 즐겨찾기가 가장 많은 식당 정보 출력하기 | 오라클
·
📝 Coding Test/SQL
문제즐겨찾기가 가장 많은 식당 정보 출력하기풀이SELECT FOOD_TYPE, REST_ID, REST_NAME, FAVORITESFROM REST_INFOWHERE (FOOD_TYPE, FAVORITES) IN ( SELECT FOOD_TYPE, MAX(FAVORITES) FROM REST_INFO GROUP BY FOOD_TYPE)ORDER BY FOOD_TYPE DESC;GROUP BY를 이용해서 음식별 최대 즐겨찾기 수를 뽑은 서브쿼리를 이용해서 풀이합니다.
[프로그래머스 Lv3] 가장 먼 노드 | 자바
·
📝 Coding Test/Programmers Lv3
문제가장 먼 노드풀이import java.util.*;class Solution { public int solution(int n, int[][] edge) { int answer = 0; int[] visited = new int[n + 1]; ArrayList> graph = new ArrayList(); for(int i = 0; i ()); } for(int i = 0; i > graph, int[] visited, int start) { Queue q = new LinkedList(); q.offer(start); visited[start] = 1; ..
[프로그래머스] 주문량이 많은 아이스크림들 조회하기 | 오라클
·
📝 Coding Test/SQL
문제주문량이 많은 아이스크림들 조회하기풀이SELECT FLAVORFROM ( SELECT FLAVOR, SUM(TOTAL_ORDER) SUM FROM ( SELECT * FROM FIRST_HALF UNION ALL SELECT * FROM JULY ) GROUP BY FLAVOR ORDER BY SUM DESC) WHERE ROWNUM 상반기와 7월에 가장 많이 팔린 FLAVOR를 순서대로 3개 구하는 문제입니다. 상반기 판매정보와 7월 판매정보 중 겹치는 데이터가 없기 때문에, UNION ALL을 사용해서 풀이했습니다. *참고 : UNION은 중복된 row를 제외하고(DISTINCT), UNION ALL은 중복된 row도 ..
[프로그래머스] 취소되지 않은 진료 예약 조회하기 | 오라클
·
📝 Coding Test/SQL
문제취소되지 않은 진료 예약 조회하기풀이SELECT A.APNT_NO, P.PT_NAME, P.PT_NO, A.MCDP_CD, D.DR_NAME, A.APNT_YMDFROM APPOINTMENT A JOIN PATIENT P ON A.PT_NO = P.PT_NO JOIN DOCTOR D ON A.MCDP_CD = D.MCDP_CD AND A.MDDR_ID = D.DR_IDWHERE TO_CHAR(A.APNT_YMD, 'YYYYMMDD') = '20220413' AND A.MCDP_CD = 'CS' AND A.APNT_CNCL_YN = 'N'ORDER BY A.APNT_YMD;
[프로그래머스] 자동차 대여 기록 별 대여 금액 구하기 | 오라클
·
📝 Coding Test/SQL
문제자동차 대여 기록 별 대여 금액 구하기풀이SELECT AA.HISTORY_ID, (AA.RENT_DATE * AA.DAILY_FEE) * (100 - NVL(DISCOUNT_RATE, 0)) / 100 FEEFROM (SELECT HISTORY_ID, H.END_DATE - H.START_DATE + 1 RENT_DATE, CASE WHEN H.END_DATE - H.START_DATE + 1 >= 90 THEN '90일 이상' WHEN H.END_DATE - H.START_DATE + 1 >= 30 THEN '30일 이상' WHEN H.END_DATE - H.START_DATE + 1 >= ..
[프로그래머스 Lv2] 올바른 괄호 | 자바
·
📝 Coding Test/Programmers Lv2
문제올바른 괄호풀이 1import java.util.*;class Solution { boolean solution(String s) { String[] strArr = s.split(""); Stack stack = new Stack(); for(int i = 0; i 정확성 테스트 케이스는 통과했지만, 효율성 테스트 케이스를 통과하는데 실패했습니다.이 문제의 조건 중 하나는 문자열이 최대 100,000이 될수 있다는 점이고, split을 사용하면 문자열 전체를 새로운 배열로 복사해야 하며, 추가적인 메모리 사용과 처리 시간이 발생합니다.풀이 2class Solution { boolean solution(String s) { String[] ..