sql 10

[프로그래머스] 연도별 대장균 크기의 편차 구하기(SQL)

문제https://school.programmers.co.kr/learn/courses/30/lessons/299310풀이(20분)SELECT YEAR(D.DIFFERENTIATION_DATE) AS YEAR, F.MV-D.SIZE_OF_COLONY AS YEAR_DEV, D.IDFROM ECOLI_DATA AS D LEFT OUTER JOIN ( SELECT YEAR(E.DIFFERENTIATION_DATE) AS YEAR, MAX(E.SIZE_OF_COLONY) AS MV FROM ECOLI_DATA AS E GROUP BY YEAR(E.DIFFERENTIATION_DATE) ) AS F ON YEAR(D.DIFFERENTIATION_DATE) = F.YEARORDER ..

[프로그래머스] 진료과별 총 예약 횟수 출력하기(SQL)

문제https://school.programmers.co.kr/learn/courses/30/lessons/132202풀이(5분)-- 2022년 5월에 예약한 환자 수를 진료과코드 별로 조회하는 SQL문-- 컬럼명은 '진료과 코드', '5월예약건수'로 지정-- 진료과별 예약한 환자 수를 기준으로 오름차순 정렬하고, 예약한 환자 수가 같다면 진료과 코드를 기준으로 오름차순 정렬SELECT MCDP_CD AS '진료과 코드', COUNT(APNT_NO) AS '5월예약건수'FROM APPOINTMENTWHERE APNT_YMD BETWEEN '2022-05-01' AND '2022-05-31'GROUP BY MCDP_CDORDER BY COUNT(APNT_NO) ASC, MCDP_CD ASC;..

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

문제https://school.programmers.co.kr/learn/courses/30/lessons/144854풀이(15분)SELECT BOOK_ID, AUTHOR_NAME, DATE_FORMAT(PUBLISHED_DATE, '%Y-%m-%d') as PUBLISHED_DATEFROM (BOOK INNER JOIN AUTHOR ON BOOK.AUTHOR_ID = AUTHOR.AUTHOR_ID)WHERE CATEGORY = '경제'ORDER BY PUBLISHED_DATE; 날짜 형식을 맞추기 위해 DATE_FORMAT를 사용한다.inner join 을 통해 책의 저자 아이디와 저자 리스트의 아이디가 동일하고,카테고리가 경제인 경우에 대하여,출판일 기준으로 오름차순 출력한다.

[프로그래머스] 경기도에 위치한 식품 창고 목록 출력하기(SQL)

문제https://school.programmers.co.kr/learn/courses/30/lessons/131114 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr풀이(15분)SELECT WAREHOUSE_ID, WAREHOUSE_NAME, ADDRESS, ifnull(FREEZER_YN,'N') as FREEZER_YN FROM FOOD_WAREHOUSE WHERE ADDRESS LIKE '경기도%'ORDER BY WAREHOUSE_ID ASC; ifnull이라는 메서드를 통해 null값을 대체할 수 있다.ifnull(칼럼명, '대체하고 싶은 텍스트') 라고 작성하면 된다. 이 경우 null을 발견..

[프로그래머스] 최댓값 구하기(SQL)

문제https://school.programmers.co.kr/learn/courses/30/lessons/59415 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr풀이SELECT MAX(DATETIME) FROM ANIMAL_INS; 정확한 문법이고, 정답을 맞기도 했다. 다만 문제점은 테이블 명을 시간으로 지정하지 않았다는 것이다. 그럼에도 답은 맞았다. 하지만 반드시 테이블 명을 확인하고 맞춰서 짓도록 하자!!! SQL의 경우 내가 작성한 문법이 결과적으로 올바른 출력을 할 수 있음에도, 시간 혹은 중복 호출이 많을 수 있다. 이러한 부분에 대해 반드시 고민하며 정답을 맞춘 이후에도 다른 사람들의 ..

[프로그래머스] 가격이 제일 비싼 식품의 정보 출력하기(SQL)

문제https://school.programmers.co.kr/learn/courses/30/lessons/131115풀이SELECT PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY, PRICE // MAX_PRICE를 제외하기 위함FROM FOOD_PRODUCT P // 원래의 테이블INNER JOIN (SELECT MAX(PRICE) AS MAX_PRICE FROM FOOD_PRODUCT) MAX_PRODUCT // 조인 할 테이블ON P.PRICE = MAX_PRODUCT.MAX_PRICE; // 가격이 같은 것만 최대 값이 담겨있는 테이블을 먼저 만든 뒤 이에 대한 INNER JOIN 을 실행했다. 물론 정답이기도 하고 코드도 동작하지만 문법 상 최고의 선택은 ..