SQL 코드카타 31

가격대 별 상품 개수 구하기 # TRUNCATE(숫자, 버릴 자릿수)

https://school.programmers.co.kr/learn/courses/30/lessons/131530 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr PRODUCT 테이블에서 만원 단위의 가격대 별로 상품 개수를 출력하는 SQL 문을 작성해주세요. 이때 컬럼명은 각각 컬럼명은 PRICE_GROUP, PRODUCTS로 지정해주시고 가격대 정보는 각 구간의 최소금액(10,000원 이상 ~ 20,000 미만인 구간인 경우 10,000)으로 표시해주세요. 결과는 가격대를 기준으로 오름차순 정렬해주세요. -- 내가 작성한 쿼리 SELECT CASE W..

SQL 코드카타 2024.03.31

있었는데요 없었습니다

관리자의 실수로 일부 동물의 입양일이 잘못 입력되었습니다. 보호 시작일보다 입양일이 더 빠른 동물의 아이디와 이름을 조회하는 SQL문을 작성해주세요. 이때 결과는 보호 시작일이 빠른 순으로 조회해야합니다. # 내가 작성한 쿼리 SELECT i.animal_id, i.name FROM animal_ins i INNER JOIN animal_outs o ON i.animal_id = o.animal_id WHERE i.datetime > o.datetime ORDER BY i.datetime # 다른 쿼리 SELECT a.animal_id, a.name from animal_ins a, animal_outs b where a.animal_id = b.animal_id and a.datetime > b.dat..

SQL 코드카타 2024.03.29

진료과별 총 예약 횟수 출력하기 # MONTH()

PPOINTMENT 테이블에서 2022년 5월에 예약한 환자 수를 진료과코드 별로 조회하는 SQL문을 작성해주세요. 이때, 컬럼명은 '진료과 코드', '5월예약건수'로 지정해주시고 결과는 진료과별 예약한 환자 수를 기준으로 오름차순 정렬하고, 예약한 환자 수가 같다면 진료과 코드를 기준으로 오름차순 정렬해주세요. https://school.programmers.co.kr/learn/courses/30/lessons/132202#qna # 내가 작성한 쿼리 SELECT mcdp_cd AS "진료과 코드" , COUNT(apnt_no) AS "5월예약건수" FROM appointment WHERE DATE_FORMAT(apnt_ymd, '%Y-%m') = '2022-05' GROUP BY 1 ORDER BY..

SQL 코드카타 2024.03.28

입양 시각 구하기(1) # HOUR()

보호소에서는 몇 시에 입양이 가장 활발하게 일어나는지 알아보려 합니다. 09:00부터 19:59까지, 각 시간대별로 입양이 몇 건이나 발생했는지 조회하는 SQL문을 작성해주세요. 이때 결과는 시간대 순으로 정렬해야 합니다. # 내가 작성한 쿼리 SELECT DATE_FORMAT(datetime, '%H') "HOUR" , COUNT(*) COUNT FROM animal_outs WHERE DATE_FORMAT(datetime, '%H') BETWEEN 09 AND 19 GROUP BY 1 ORDER BY 1 # 다른 풀이 방식 SELECT HOUR(datetime) AS HOUR, COUNT(*) AS COUNT FROM animal_outs WHERE HOUR(datetime) BETWEEN 9 AND..

SQL 코드카타 2024.03.28

이름에 el이 들어가는 동물 찾기

이름에 el이 들어가는 동물 찾기 동물 보호소에 들어온 동물 이름 중, 이름에 "EL"이 들어가는 개의 아이디와 이름을 조회하는 SQL문을 작성해주세요. 이때 결과는 이름 순으로 조회해주세요. 단, 이름의 대소문자는 구분하지 않습니다. # 내가 작성한 쿼리 SELECT animal_id, name FROM animal_ins WHERE animal_type = 'Dog' AND name IN('%EL%' , '%el%') ORDER BY name SELECT animal_id, name FROM animal_ins WHERE animal_type = 'Dog' AND name LIKE '%EL%' OR name LIKE '%el%' ORDER BY name # SELECT animal_id, name F..

SQL 코드카타 2024.03.24

흉부외과 또는 일반외과 의사 목록 출력하기

DOCTOR 테이블에서 진료과가 흉부외과(CS)이거나 일반외과(GS)인 의사의 이름, 의사ID, 진료과, 고용일자를 조회하는 SQL문을 작성해주세요. 이때 결과는 고용일자를 기준으로 내림차순 정렬하고, 고용일자가 같다면 이름을 기준으로 오름차순 정렬해주세요. -- SELECT dr_name , dr_id , mcdp_cd , DATE_FORMAT(hire_ymd, '%Y-%m-%d') hire_ymd FROM doctor WHERE mcdp_cd = 'CS' OR 'GS' ORDER BY hire_ymd DESC, dr_name # SELECT DR_NAME , DR_ID , MCDP_CD , DATE_FORMAT(hire_ymd, '%Y-%m-%d') HIRE_YMD FROM doctor WHERE m..

SQL 코드카타 2024.03.22

자동차 대여 기록에서 장기/단기 대여 구분하기

CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블에서 대여 시작일이 2022년 9월에 속하는 대여 기록에 대해서 대여 기간이 30일 이상이면 '장기 대여' 그렇지 않으면 '단기 대여' 로 표시하는 컬럼(컬럼명: RENT_TYPE)을 추가하여 대여기록을 출력하는 SQL문을 작성해주세요. 결과는 대여 기록 ID를 기준으로 내림차순 정렬해주세요. SELECT history_id , car_id , SUBSTR(start_date, 1, 10) start_date , SUBSTR(end_date, 1, 10) end_date , CASE WHEN CAST((end_date) AS decimal) - CAST((start_date) AS decimal) >= 30 THEN '장기대여' ELSE ..

SQL 코드카타 2024.03.21

조건에 맞는 도서 리스트 출력하기

BOOK 테이블에서 2021년에 출판된 '인문' 카테고리에 속하는 도서 리스트를 찾아서 도서 ID(BOOK_ID), 출판일 (PUBLISHED_DATE)을 출력하는 SQL문을 작성해주세요. 결과는 출판일을 기준으로 오름차순 정렬해주세요. SELECT book_id , DATE_FORMAT(published_date, '%Y-%m-%d') PUBLISHED_DATE FROM book WHERE published_date BETWEEN '2021-01-01' AND '2021-12-31' AND category = '인문' ORDER BY published_date + 어제 코드카타 하면서 공부했던 DATE_FORMAT 함수를 사용해보았다 Q. DATE_FORMAT 의 사용법은 어떻게 될까? A. %Y 20..

SQL 코드카타 2024.03.20

특정 옵션이 포함된 자동차 리스트 구하기

CAR_RENTAL_COMPANY_CAR 테이블에서 '네비게이션' 옵션이 포함된 자동차 리스트를 출력하는 SQL문을 작성해주세요. 결과는 자동차 ID를 기준으로 내림차순 정렬해주세요. SELECT * FROM CAR_RENTAL_COMPANY_CAR WHERE options LIKE '%네비게이션%' -- = 과 LIKE 가 매번 헷갈림.. = 은 완전히 일치할때, LIKE 는 저런 단어가 있을때 출력? ORDER BY car_id DESC 단어를 찾을때 = 과 LIKE 구문이 매번 헷갈림 = : 완전히 일치하는 단어 LIKE : 부분적으로 일치하는 단어 다른 풀이 방식 WHERE INSTR(options, '네비게이션') > 0

SQL 코드카타 2024.03.19