[프로그래머스] 오랜 기간 보호한 동물(2) | 오라클
·
📝 Coding Test/SQL
문제오랜 기간 보호한 동물(2)풀이SELECT *FROM ( SELECT I.ANIMAL_ID, I.NAME FROM ANIMAL_INS I JOIN ANIMAL_OUTS O ON I.ANIMAL_ID = O.ANIMAL_ID ORDER BY O.DATETIME - I.DATETIME DESC)WHERE ROWNUM DATETIME을 빼서 정렬을 할 생각을 처음에 하지 못했습니다.
[프로그래머스] 조회수가 가장 많은 중고거래 게시판의 첨부파일 조회하기 | 오라클
·
📝 Coding Test/SQL
[level 3] 조회수가 가장 많은 중고거래 게시판의 첨부파일 조회하기 - 164671문제 링크성능 요약메모리: 0.0 MB, 시간: 0.00 ms구분코딩테스트 연습 > String, Date정답SELECT '/home/grep/src/' || B.BOARD_ID || '/' || B.FILE_ID || B.FILE_NAME || B.FILE_EXT FILE_PATHFROM USED_GOODS_BOARD A JOINUSED_GOODS_FILE BON A.BOARD_ID = B.BOARD_IDWHERE VIEWS = ( SELECT MAX(VIEWS) FROM USED_GOODS_BOARD)ORDER BY FILE_ID DESC;참고중첩 서브쿼리를 이용하여 문제를 해결할 수 있습니다.참고 : 서브쿼..
[프로그래머스] 조건에 부합하는 중고거래 상태 조회하기 | 오라클
·
📝 Coding Test/SQL
[level 2] 조건에 부합하는 중고거래 상태 조회하기 - 164672문제 링크성능 요약메모리: 0.0 MB, 시간: 0.00 ms구분코딩테스트 연습 > String, Date정답SELECT BOARD_ID, WRITER_ID, TITLE, PRICE, CASE WHEN STATUS = 'SALE' THEN '판매중' WHEN STATUS = 'RESERVED' THEN '예약중' ELSE '거래완료' END AS STATUSFROM USED_GOODS_BOARDWHERE TO_CHAR(CREATED_DATE, 'YYYY-MM-DD') = '2022-10-05'ORDER BY BOARD_ID DESC;
[프로그래머스] 오랜 기간 보호한 동물(1) | 오라클
·
📝 Coding Test/SQL
문제오랜 기간 보호한 동물(1)풀이SELECT *FROM ( SELECT AI.NAME, AI.DATETIME FROM ANIMAL_INS AI LEFT JOIN ANIMAL_OUTS AO ON AI.ANIMAL_ID = AO.ANIMAL_ID WHERE AO.ANIMAL_ID IS NULL ORDER BY AI.DATETIME)WHERE ROWNUM LEFT JOIN을 사용하여 들어온 기록은 있지만 나간 기록이 없는 동물을 조회하고 들어온 시간을 기준으로 오름차순 정렬한 인라인 뷰를 만듭니다.MySQL에는 limit 기능을 사용하면 원하는 데이터의 수를 가져오기 편한데 오라클에는 없습니다.ROWNUM을 사용하여 원하는 수만큼의 데이터를 가져올 수 있습니다.
[프로그래머스] 없어진 기록 찾기 | 오라클
·
📝 Coding Test/SQL
문제없어진 기록 찾기풀이SELECT AO.ANIMAL_ID, AO.NAMEFROM ANIMAL_OUTS AO LEFT JOIN ANIMAL_INS AION AO.ANIMAL_ID = AI.ANIMAL_IDWHERE AI.ANIMAL_ID IS NULLORDER BY AO.ANIMAL_ID, AO.NAME;ANIMAL_OUTS을 기준으로 ANIMAL_INS에 대한 정보가 있는지 없는지 여부를 판단하면 되는 문제입니다. LEFT JOIN을 사용해서 문제를 풀었습니다.
[프로그래머스] 조건에 맞는 도서와 저자 리스트 출력하기 | 오라클
·
📝 Coding Test/SQL
문제조건에 맞는 도서와 저자 리스트 출력하기풀이SELECT B.BOOK_ID, A.AUTHOR_NAME, TO_CHAR(B.PUBLISHED_DATE, 'YYYY-MM-DD') PUBLISHED_DATEFROM BOOK B JOIN AUTHOR AON B.AUTHOR_ID = A.AUTHOR_IDWHERE B.CATEGORY = '경제'ORDER BY B.PUBLISHED_DATE;JOIN을 이용해 쉽게 풀 수 있는 간단한 문제였습니다.
[프로그래머스] 상품 별 오프라인 매출 구하기 | 오라클
·
📝 Coding Test/SQL
문제상품 별 오프라인 매출 구하기풀이SELECT P.PRODUCT_CODE, SUM(OS.SALES_AMOUNT * P.PRICE) AS SALES FROMOFFLINE_SALE OS JOIN PRODUCT PON OS.PRODUCT_ID = P.PRODUCT_IDGROUP BY PRODUCT_CODEORDER BY SALES DESC, PRODUCT_CODE;상품코드 별 매출액(판매가 * 판매량) 합계를 출력하는 문제입니다.두 테이블을 JOIN해주고, 상품코드 별 => GROUP BY, 매출액(판매가 * 판매량) 합계 => SUM()을 이용하여 쿼리를 작성하였습니다.