분류 전체보기 59

프로그래머스 SQL 오답노트 Level 2 업그레이드 된 아이템 구하기

프로그래머스 오답노트 Level 2 업그레이드 된 아이템 구하기 아이템의 희귀도가 'RARE'인 아이템들의 모든 다음 업그레이드 아이템의 아이템 ID(ITEM_ID), 아이템 명(ITEM_NAME), 아이템의 희귀도(RARITY)를 출력하는 SQL 문을 작성해 주세요. 이때 결과는 아이템 ID를 기준으로 내림차순 정렬주세요 1.RARE 인 ITEM_ID 를 구한다 2.해당 ITEM_ID 서브 쿼리로 작성하고, 추출된 RARE 인 ITEM_ID 들과 같은 PARENT_ITEM_ID 를 가진 항목들을 추출한다 초반 쿼리는 아이템의 희귀도가 RARE 인 경우에 대한 필터링 조건이 없었음select I.ITEMID ITEMID, I.ITEMNAME ITEMNAME, I.RARITY RARITY From I..

SQL 2025.10.16

프로그래머스 SQL 오답노트 Level 3 업그레이드 할 수 없는 아이템 구하기

프로그래머스 업그레이드 할 수 없는 아이템 구하기 더 이상 업그레이드할 수 없는 아이템의 아이템 ID(ITEM_ID), 아이템 명(ITEM_NAME), 아이템의 희귀도(RARITY)를 출력하는 SQL 문을 작성해 주세요. 이때 결과는 아이템 ID를 기준으로 내림차순 정렬해 주세요. 1. 문제 요구에 대한 정확한 이해 필요내가 필요로 한 것은 업그레이드를 할 수 없는 아이템들문제에 따르면 업그레이드를 할 수 있었던 아이템들은 모두 PARENT_ITEM_ID 가 존재함즉 PARENT_ITEM_ID 에 ID 가 없거나 NULL 이라면 아이템을 업그레이드 할 수 없었던 것 접근 방법은(1) 업그레이드 할 수 있었던 ITEM_ ID 들, 즉 PARENT_ITEM_ID 에 ID 가 존재한 항목들을 서브 ..

SQL 2025.10.16

프로그래머스 SQL 오답노트 Level 4 년, 월, 성별 별 상품 구매 회원 수 구하기

프로그래머스 년, 월, 성별 별 상품 구매 회원 수 구하기 USER_INFO 테이블과 ONLINE_SALE 테이블에서 년, 월, 성별 별로 상품을 구매한 회원수를 집계하는 SQL문을 작성해주세요. 결과는 년, 월, 성별을 기준으로 오름차순 정렬해주세요. 이때, 성별 정보가 없는 경우 결과에서 제외해주세요. -틀렸던 이유 : USER_ID 를 DISTINCT 처리 해줬어야 했음-한 명의 유저가 여러개의 구매를 발생시킬 수 있었어서 유저 정보와 구매 정보를 조인하면 구매수 만큼 행이 불어나있었음SELECT YEAR(S.SALES_DATE) YEAR, MONTH(S.SALES_DATE) MONTH, I.GENDER GENDER, COUNT(I.USER_ID) USERSFROM USER_INFO I RI..

SQL 2025.10.15

[아이티윌 빅데이터 52기] Day 7 Python Basic

파이썬 시작하기 / 변수와 연산자-프로그래밍 언어-파이썬 코딩 준비-개발 도구 설치하기-첫 번쨰 프로그램-변수의 이해 프로그래밍 언어프로그램은 사람이 컴퓨터에게 전달하기 위한 명령어의 모음으로저장 / 검색 / 수정 / 삭제로 이루어져있음 sql 로 보면 insert , Select , Update ,Delete소프트웨어로 보면 create ,read ,update ,delete > CRUD 소프트웨어가 수행해야하는 가장 기본적인 기능 컴퓨터는 0.1로 이루어진 이진수 체계만 이해할 수 있고프로그램은 컴퓨터에게 명령을 내리기 위한 이진수의 집합이라 할 수 있음 근데 우리가 직접 컴퓨터랑 이진수로 소통할 수 없으니프로그래밍 언어를 통해 진행하는 것 파이썬이 실행되는 방식소스 코드 > 인터프리터 > ..

프로그래머스 SQL 오답노트 Level 3 자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기

자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기 CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블에서 2022년 10월 16일에 대여 중인 자동차인 경우 '대여중' 이라고 표시하고, 대여 중이지 않은 자동차인 경우 '대여 가능'을 표시하는 컬럼(컬럼명: AVAILABILITY)을 추가하여 자동차 ID와 AVAILABILITY 리스트를 출력하는 SQL문을 작성해주세요. 이때 반납 날짜가 2022년 10월 16일인 경우에도 '대여중'으로 표시해주시고 결과는 자동차 ID를 기준으로 내림차순 정렬해주세요. 1. 문제 해석의 오류WITH A AS (SELECT * ,MAX(end_date) OVER (PARTITION BY CAR_ID ORDER BY end_date DESC) LA..

SQL 2025.10.14

프로그래머스 SQL 오답노트 Level 3 특정 조건을 만족하는 물고기별 수와 최대 길이 구하기

특정 조건을 만족하는 물고기별 수와 최대 길이 구하기 FISH_INFO에서 평균 길이가 33cm 이상인 물고기들을 종류별로 분류하여 잡은 수, 최대 길이, 물고기의 종류를 출력하는 SQL문을 작성해주세요. 결과는 물고기 종류에 대해 오름차순으로 정렬해주시고, 10cm이하의 물고기들은 10cm로 취급하여 평균 길이를 구해주세요. 컬럼명은 물고기의 종류 'FISH_TYPE', 잡은 수 'FISH_COUNT', 최대 길이 'MAX_LENGTH'로 해주세요. SELECT COUNT(FISH_TYPE) FISH_COUNT , MAX(LENGTH) MAX_LENGTH ,FISH_TYPEFROM FISH_INFOGROUP BY FISH_TYPEHAVING AVG(IFNULL(LENGTH,10)) >= 33ORDER..

SQL 2025.10.14

[아이티윌 빅데이터 52기] DBML 데이터 베이스 설계 실습

데이터 베이스 설계 실습[최종 산출물] 기존에 존재하는 데이터 명세서를 기준으로 vs code 에 ERD 를 그려보자 //학과 테이블Table departments { id int [pk,increment,note: "학과 번호"] dname varchar(100) [not null, note:"학과명"] loc varchar(100) [not null, note:"위치"] phone varchar(15) [not null, note:"전화번호"] email varchar(100) [not null, note:"이메일 주소"] established int [not null, note:"설립 연도"] homepage varchar(255) [not null..

[아이티윌 빅데이터 52기] Day 6 데이터 베이스 설계

데이터 베이스 설계-VS 코드 활용-ERD 기반 DB 설계-트랜잭션의 이해 IDE 의 이해 (Integrated Development Environment)통합 개발 환경으로 코딩, 디버그,컴파일,배포 등 프로그램 개발과 관련된 모든 작업을 하나의 프로그램에서 처리하는 환경을 제공하는 소프트웨어 *VS 코드 사용시에는 항상 나의 산출물을 저장할 폴더를 생성한 후 작업을 시작해야함나의 파일이 어디에 저장되고 있는지, 개인 파일 관리 신경써서 하기! 만들어진 파일에서 새 파일 + 확장자 제대로 지정해주기VS CODE 에서 만든 파일들은 실제 문서에 동일하게 저장 데이터 베이스의 설계 단계데이터 모델링의 3단계 1. 개념적 모델링-추상화 수준이 가장 높고, 구체화되기 이전 단계.-중요한 부분 위주로 모델..

프로그래머스 SQL 오답노트 Level 3 오랜 기간 보호한 동물 (2)

프로그래머스 SQL 오답노트오랜 기간 보호한 동물 (2) 입양을 간 동물 중, 보호 기간이 가장 길었던 동물 두 마리의 아이디와 이름을 조회하는 SQL문을 작성해주세요. 이때 결과는 보호 기간이 긴 순으로 조회해야 합니다. SELECT o.animal_id animal_id ,datediff(o.datetime, i.datetime) datediff FROM ANIMAL_INS i inner join animal_outs o on i.animal_id = o.animal_idorder by datediff desc datediff(o.datetime, i.datetime) datediff 를 select 절에서만 사용하려 했음.날짜 비교 구분은 where 절에서 바로 사용이 가능했음 SELECT o.a..

SQL 2025.10.14

[아이티윌 빅데이터 52기] Day 5 고급 데이터 조회 2 / 데이터 베이스 구축

고급 데이터 조회 2 / 데이터 베이스 구축-INNER/OUTER 외의 JOIN ( SELF JOIN ,EQUI JOIN ,CROSS JOIN)-서브쿼리 (단일행 / 다중행 / 스칼라 / 인라인뷰)-데이터 베이스 관리-테이블 관리 EQUI JOIN기본적으로 INNER JOIN 과 동일함ANSI SQL 은 모든 DBMS 가 따르는 표준적인 문법2개 이상의 테이블에서 데이터를 조회하면서, WHRER 절을 통해 JOIN 조건을 명시함FROM 절에는 , 를 기준으로 테이블 명시 JOIN 조건을 써준 후에 추가적인 필터링은 AND 로 이어줄 수 있음 CROSS JOINEQUI JOIN 에서 JOIN 조건이 제외된 경우 즉, 조합 가능한 모든 경우의 수가 생성 (카테시안곱) SELF JOIN하나의 테..