[프로그래머스 SQL] Lv.2 - 부모의 형질을 모두 가지는 대장균 찾기
·
SQL/SELECT
https://school.programmers.co.kr/learn/courses/30/lessons/301647 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 풀이ECOLI_DATE 테이블을 자체 조인한다. PARENT_ID와 ID가 같은 행끼리 조인한다.부모의 형질을 모두 보유한 행을 필터링한다. 필터링 조건은 부모의 형질을 모두 보유해야 하므로 부모와 자식의 형질끼리 AND 연산했을 때 부모의 형질과 같아야 한다.ID를 기준으로 오름차순 정렬한다.대장균 ID, 대장균 형질, 부모 대장균 형질을 조회한다.SELECT sub.ID, sub.GENOTYPE, m.GENOTYPE ..
[프로그래머스 SQL] Lv.2 - 특정 물고기를 잡은 총 수 구하기
·
SQL/SELECT
https://school.programmers.co.kr/learn/courses/30/lessons/298518 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 풀이FISH_INFO 테이블과 FISH_NAME_INFO 테이블을 조인한다.FISH_NAME_INFO 테이블의 물고기 이름이 "BASS"와 "SNAPPER"인 행을 필터링한다.카운트 쿼리로 조회된 행의 수를 조회한다.SELECT COUNT(*) AS FISH_COUNTFROM FISH_INFO A JOIN FISH_NAME_INFO B ON A.FISH_TYPE = B.FISH_TYPEWHERE B.FISH_NAME IN('BASS..
[프로그래머스 SQL] Lv.2 - 조건에 맞는 개발자 찾기
·
SQL/SELECT
https://school.programmers.co.kr/learn/courses/30/lessons/276034 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 풀이SKILLCODES 테이블과 DEVELOPERS 테이블을 조인한다. 이때 ON절은 CODE와 SKILL_CODE를 AND 연산한다.NAME인 "Python" 또는 "C#"인 행을 필터링한다.ID를 기준으로 오름차순 정렬한다.ID, 이메일, 이름, 성을 조회한다. 한 개발자가 두 개의 스킬을 모두 가질 수 있으므로 DISTINCT 키워드로 중복 조회된 행을 처리한다.SELECT DISTINCT(ID), EMAIL, ..
[프로그래머스 SQL] Lv.2 - 업그레이드 된 아이템 구하기
·
SQL/SELECT
https://school.programmers.co.kr/learn/courses/30/lessons/273711 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 풀이ITEM_INFO 테이블과 ITEM_TREE 테이블을 조인한다.서브 쿼리로 ITEM_TREE 테이블의 PARENT_ITEM_ID에 해당하는 아이템의 희귀도가 "RARE"인 행을 필터링한다. 아이템 ID를 기준으로 내림차순 정렬한다.아이템 ID, 아이템 명, 아이템의 희귀도를 조회한다.SELECT B.ITEM_ID, A.ITEM_NAME, A.RARITYFROM ITEM_INFO A JOIN ITE..
[프로그래머스 SQL] Lv.2 - 재구매가 일어난 상품과 회원 리스트 구하기
·
SQL/SELECT
https://school.programmers.co.kr/learn/courses/30/lessons/131536 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 풀이GROUP BY 키워드로 회원 ID와 상품 ID를 그룹핑한다. 이때 그룹핑된 행이 2개 이상이면 재구매가 일어난 것이므로 HAVING 키워드로 조건을 걸어준다.회원 ID를 기준으로 오름차순, 상품 ID를 기준으로 내림차순 정렬한다.회원 ID와 상품 ID를 조회한다.SELECT USER_ID, PRODUCT_IDFROM ONLINE_SALEGROUP BY USER_ID, PRODUCT_ID ..
[프로그래머스 SQL] Lv.2 - 3월에 태어난 여성 회원 목록 출력하기
·
SQL/SELECT
https://school.programmers.co.kr/learn/courses/30/lessons/131120 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 풀이IS NOT NULL 키워드로 전화번호가 NULL이 아닌 행과 MONTH 키워드로 생일이 3월인 행 그리고 성별이 "W"인 행을 필터링한다.ID를 기준으로 오름차순 정렬한다.ID, 이름, 성별, 생년월일을 조회한다. 생년월일은 DATE_FORMAT 키워드로 포맷을 맞춰준다.SELECT MEMBER_ID, MEMBER_NAME, GENDER, DATE_FORMAT(DATE_OF_BIRTH, '%Y-%m-%d..
[프로그래머스 SQL] Lv.1 - 특정 형질을 가지는 대장균 찾기
·
SQL/SELECT
https://school.programmers.co.kr/learn/courses/30/lessons/301646 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 풀이비트 연산으로 WHERE 절을 정의한다."2번 형질을 보유하지 않는다"  → 2진수 10(10진수 2)과 AND 연산했을 때 0이어야 한다."1번 형질을 보유해야 한다." → 2진수 1(10진수 1)과 AND 연산했을 때 0이면 안된다."3번 형질을 보유해야 한다." → 2진수 100(10진수 4)과 AND 연산했을 때 0이면 안된다.COUNT 키워드로 조회된 행의 개수를 조회한다.SELECT COUNT(*) AS COUNTFROM ..
[프로그래머스 SQL] Lv.1 - 가장 큰 물고기 10마리 구하기
·
SQL/SELECT
https://school.programmers.co.kr/learn/courses/30/lessons/298517 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 풀이길이를 기준으로 내림차순, ID를 기준으로 오름차순 정렬한다.LIMIT 키워드로 길이가 긴 상위 10개의 행만 조회되도록 한다.ID와 길이를 조회한다.SELECT ID, LENGTHFROM FISH_INFOORDER BY LENGTH DESC, IDLIMIT 10
[프로그래머스 SQL] Lv.1 - 잔챙이 잡은 수 구하기
·
SQL/SELECT
https://school.programmers.co.kr/learn/courses/30/lessons/293258 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 풀이ISNULL 키워드로 LENGTH가 NULL인 행을 필터링한다.COUNT 키워드로 조회된 행의 수를 조회한다.SELECT COUNT(ID) AS FISH_COUNTFROM FISH_INFOWHERE ISNULL(LENGTH)
[프로그래머스 SQL] Lv.1 - Python 개발자 찾기
·
SQL/SELECT
https://school.programmers.co.kr/learn/courses/30/lessons/276013 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 풀이OR 또는 IN 키워드로 Python 스킬을 가진 행을 필터링한다.ID를 기준으로 오름차순 정렬한다.ID, 이메일, 이름, 성을 조회한다.SELECT ID, EMAIL, FIRST_NAME, LAST_NAMEFROM DEVELOPER_INFOSWHERE # "Python" IN (SKILL_1, SKILL_2, SKILL_3) # IN 사용 SKILL_1 = "Python" OR SKILL_2 = "Pyth..