반응형 SQL61 [프로그래머스 SQL] Lv. 2 이름에 el이 들어가는 동물 찾기 ※ 문제 ※ 코드-- 코드를 입력하세요SELECT ANIMAL_ID, NAMEFROM ANIMAL_INSWHERE LOWER(NAME) LIKE '%el%' AND ANIMAL_TYPE = 'Dog'ORDER BY NAME; ※ 풀이간단하게 ANIAML_TYPE이 'Dog'이고, 이름에 el이 들어가는 값만 찾으면 됩니다.다만 대소문자가 무관하다고 하였으니 el, El, eL, EL 4개 중 하나에만 해당해도 찾아줘야 합니다. 그러므로1. UPPER(NAME) LIKE '%EL%'2 LOWER(NAME) LIKE '%el%' 둘 중 하나를 골라 써주시면 되겠습니다. 2025. 3. 1. [프로그래머스 SQL] Lv. 2 최솟값 구하기 ※ 문제 ※ 코드-- 코드를 입력하세요SELECT *FROM (SELECT DATETIME FROM ANIMAL_INS ORDER BY DATETIME)WHERE ROWNUM = 1; ※ 풀이우선 DATETIM을 ASCENDING(Default) 기준으로 정렬해준 테이블에서 ROWNUM이 1인 값만 뽑아주면 됩니다. 2025. 3. 1. [프로그래머스 SQL] Lv. 2 동물 수 구하기 ※ 문제 ※ 코드-- 코드를 입력하세요SELECT COUNT(*)FROM ANIMAL_INS; ※ 풀이첫번째로 푸는 레벨2 문제인데 난이도가 너무 낮아서 뭐지..? 했네요 ㅋㅋㅋㅋ레벨1에서도 레벨1답지 않은 문제가 있어서 이게 뭔가 싶었는데 분류가 제대로 되어있지 않은 것 같습니다. 2025. 3. 1. [프로그래머스 SQL] Lv. 1 특정 형질을 가지는 대장균 찾기 ※ 문제 ※ 코드-- 코드를 작성해주세요SELECT COUNT(*) AS COUNTFROM ECOLI_DATAWHERE SUBSTR(BIN(GENOTYPE), -2, 1) = 0AND (SUBSTR(BIN(GENOTYPE), -1, 1) = 1 OR SUBSTR(BIN(GENOTYPE), -3, 1) = 1);-- 코드를 작성해주세요SELECT COUNT(*) AS COUNTFROM ECOLI_DATAWHERE BIN(GENOTYPE) NOT LIKE '%1_'AND (BIN(GENOTYPE) LIKE '%1__' OR BIN(GENOTYPE) LIKE '%1'); ※ 풀이드디어 마지막 레벨1 문제네요..! 우선 SUBSTRING을 이용한 방법과 LIKE를 이용한 방법.. 2025. 3. 1. [프로그래머스 SQL] Lv. 1 조건에 부합하는 중고거래 댓글 조회하기 ※ 문제 ※ 코드-- 코드를 입력하세요SELECT B.TITLE, B.BOARD_ID, R.REPLY_ID, R.WRITER_ID, R.CONTENTS, TO_CHAR(R.CREATED_DATE, 'YYYY-MM-DD')FROM USED_GOODS_BOARD B INNER JOIN USED_GOODS_REPLY R ON B.BOARD_ID = R.BOARD_IDWHERE TO_CHAR(B.CREATED_DATE, 'YYYY-MM') = '2022-10'ORDER BY R.CREATED_DATE, B.TITLE; ※ 풀이이번엔 다른 분 코드를 참고해서 WHERE 절을 조금 더 효율적으로 바꿔보았습니다 ㅎㅎ 생각해보니 굳이 EXTRACT로 하나씩 뽑아낼 필요 없이 TO_.. 2025. 2. 28. [프로그래머스 SQL] Lv. 1 과일로 만든 아이스크림 고르기 ※ 문제 ※ 코드-- 코드를 입력하세요SELECT DISTINCT F.FLAVORFROM (SELECT * FROM FIRST_HALF WHERE TOTAL_ORDER > 3000 ORDER BY TOTAL_ORDER DESC) F, ICECREAM_INFO IWHERE F.FLAVOR = I.FLAVOR AND I.INGREDIENT_TYPE = 'fruit_based';-- 코드를 입력하세요SELECT DISTINCT *FROM (SELECT F.FLAVOR FROM FIRST_HALF F INNER JOIN ICECREAM_INFO I ON F.FLAVOR = I.FLAVOR .. 2025. 2. 28. [프로그래머스 SQL] Lv. 1 자동차 대여 기록에서 장기/단기 대여 구분하기 ※ 문제 ※ 코드-- 코드를 입력하세요SELECT HISTORY_ID, CAR_ID, TO_CHAR(START_DATE, 'YYYY-MM-DD') AS START_DATE, TO_CHAR(END_DATE, 'YYYY-MM-DD') AS END_DATE, CASE WHEN END_DATE - START_DATE >= 29 THEN '장기 대여' ELSE '단기 대여' END AS RENT_TYPEFROM CAR_RENTAL_COMPANY_RENTAL_HISTORYWHERE EXTRACT(YEAR FROM START_DATE) = 2022 AND EXTRACT(MONTH.. 2025. 2. 28. [프로그래머스 SQL] Lv. 1 특정 옵션이 포함된 자동차 리스트 구하기 ※ 문제 ※ 코드-- 코드를 입력하세요SELECT *FROM CAR_RENTAL_COMPANY_CARWHERE OPTIONS LIKE '%네비게이션%'ORDER BY CAR_ID DESC;-- 코드를 입력하세요SELECT *FROM CAR_RENTAL_COMPANY_CARWHERE INSTR(OPTIONS, '네비게이션') > 0ORDER BY CAR_ID DESC; ※ 풀이특정 키워드의 포함 여부를 판별하여 행을 추출하는 문제입니다.ORACLE 같은 경우 다음 두 함수를 통해 해결할 수 있습니다. 우선 가장 기본적인 방법인 LIKE 입니다.RE 문법을 사용하여 앞뒤에 %, %를 붙여 네비게이션이 포함된 행을 찾습니다. 다음 IN.. 2025. 2. 28. [프로그래머스 SQL] Lv. 1 잡은 물고기 중 가장 큰 물고기의 길이 구하기 ※ 문제 ※ 코드-- 코드를 작성해주세요SELECT CONCAT(MAX(IFNULL(LENGTH, 10)), 'cm') AS MAX_LENGTHFROM FISH_INFO; ※ 풀이우선 IFNULL을 사용하여 NULL만 있는 경우를 처리해줍니다. (예외처리)이후 MAX를 사용하여 최대값을 찾아주고, CONCAT을 이용하여 단위를 붙여 마무리해줍니다. 2025. 2. 28. 이전 1 2 3 4 5 6 7 다음 반응형