본문 바로가기

SQL32

[MYSQL 50] 강원도에 위치한 생산공장 목록 출력하기 강원도에 위치한 생산공장 목록 출력하기 (LEVEL1) 강원도에 위치한 식품공장공장 ID, 공장 이름, 주소를 조회정렬 공장 ID 오름차순정답 코드SELECT FACTORY_ID, FACTORY_NAME, ADDRESSFROM FOOD_FACTORYWHERE ADDRESS LIKE "강원도%"ORDER BY FACTORY_ID MEMOLIKE '강원도%' 는 REGEXP '^강원도' 로 작성 가능 2024. 11. 5.
[MYSQL 49] 자동차 대여 기록에서 장기/단기 대여 구분하기 자동차 대여 기록에서 장기/단기 대여 구분하기 (LEVEL1) 대여 시작일이 2022년 9월에 속하는 대여 기록대여 기간이 30일 이상이면 '장기 대여' 그렇지 않으면 '단기 대여' 로 표시하는 컬럼(컬럼명: RENT_TYPE)을 추가정렬 대여 기록 ID 내림차순 정답 코드SELECT HISTORY_ID, CAR_ID, DATE_FORMAT(START_DATE, "%Y-%m-%d") AS START_DATE, DATE_FORMAT(END_DATE, "%Y-%m-%d") AS END_DATE, IF(DATEDIFF(END_DATE, START_DATE) + 1 MEMODATEDIFF(시작 날짜, 끝나는 날짜) : 며칠 차이나는지 출력 (첫날부터 대여하는 기록은 +1 필요)IF(조건, TRUE, FALSE) 2024. 10. 31.
[MYSQL 48] 특정 옵션이 포함된 자동차 리스트 구하기 특정 옵션이 포함된 자동차 리스트 구하기 (LEVEL1) '네비게이션' 옵션이 포함된 자동차 리스트를 출력정렬  자동차 ID 내림차순   정답 코드SELECT CAR_ID, CAR_TYPE, DAILY_FEE, OPTIONSFROM CAR_RENTAL_COMPANY_CARWHERE OPTIONS LIKE '%네비게이션%'ORDER BY CAR_ID DESCMEMO- 2024. 10. 29.
[MYSQL 47] 조회수가 가장 많은 중고거래 게시판의 첨부파일 조회하기 조회수가 가장 많은 중고거래 게시판의 첨부파일 조회하기 (LEVEL3) USED_GOODS_BOARD와 USED_GOODS_FILE 테이블조회수가 가장 높은 중고거래 게시물 첨부파일 경로를 조회 (기본적인 파일경로는 /home/grep/src/ 이며, 게시글 ID를 기준으로 디렉토리가 구분되고, 파일이름은 파일 ID, 파일 이름, 파일 확장자로 구성)정렬 FILE ID 내림차순조회수가 가장 높은 게시물은 하나만 존재 정답 코드SELECT CONCAT('/home/grep/src/', B.BOARD_ID, '/', FILE_ID, FILE_NAME, FILE_EXT) AS FILE_PATHFROM USED_GOODS_BOARD B JOIN USED_GOODS_FILE F ON B.BOARD_ID = F.B.. 2024. 10. 28.
[MYSQL 46] 자동차 평균 대여 기간 구하기 자동차 평균 대여 기간 구하기 (LEVEL2) 평균 대여 기간이 7일 이상인 자동차자동차 ID와 평균 대여 기간(컬럼명: AVERAGE_DURATION) 리스트를 출력(평균 대여 기간은 소수점 두번째 자리에서 반올림)정렬 평균 대여 기간 내림차순, 자동차 ID 내림차순 정답 코드SELECT CAR_ID, ROUND(AVG(DATEDIFF(END_DATE, START_DATE) + 1), 1) AS AVERAGE_DURATIONFROM CAR_RENTAL_COMPANY_RENTAL_HISTORYGROUP BY CAR_IDHAVING AVERAGE_DURATION >= 7ORDER BY AVERAGE_DURATION DESC, CAR_ID DESCMEMO날짜 차이는 별도의 명령어를 사용해야 함 DATEDIF.. 2024. 10. 27.
[MYSQL 45] 조건에 부합하는 중고거래 상태 조회하기 조건에 부합하는 중고거래 상태 조회하기 (LEVEL2) 2022년 10월 5일에 등록된 중고거래 게시물의 게시글 ID, 작성자 ID, 게시글 제목, 가격, 거래상태를 조회거래상태가 SALE 이면 판매중, RESERVED이면 예약중, DONE이면 거래완료 분류하여 출력 정렬 게시글 ID 내림차순정답 코드SELECT BOARD_ID, WRITER_ID, TITLE, PRICE, CASE STATUS WHEN 'SALE' THEN '판매중' WHEN 'DONE' THEN '거래완료' WHEN 'RESERVED' THEN '예약중' END AS STATUSFROM USED_GOODS_BOARDWHERE CREATED_DATE = '2022-10.. 2024. 10. 26.