SQL 쿼리 연습/SELECT 27

[Lv.1 / 프로그래머스 / SQL] 흉부외과 또는 일반외과 의사 목록 출력하기

프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 풀이 (MySQL) DATE_FORMAT 함수를 통해 연-월-일 단위 까지만 출력해주어야 한다. SELECT DR_NAME, DR_ID, MCDP_CD, DATE_FORMAT(HIRE_YMD, '%Y-%m-%d') AS HIRE_YMDFROM DOCTORWHERE MCDP_CD = 'CS' OR MCDP_CD = 'GS'ORDER BY HIRE_YMD DESC, DR_NAME ASC

[Lv.3 / 프로그래머스 / SQL] 대장균의 크기에 따라 분류하기 2

프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 풀이(MySQL) NTILE() 함수를 사용하면 특정 데이터를 등급별로 분류할 수 있다. 문제에서는 총 4가지의 등급이 존재하므로 해당 함수를 통해 4등급으로 나눈 뒤, CASE 별로 문자로 치환하면 문제를 해결할 수 있다. SELECT ID, CASE WHEN NTILE(4) over (ORDER BY SIZE_OF_COLONY) = 1 THEN "LOW" WHEN NTILE(4) over (ORDER BY SIZE_OF_COLONY) = 2 THEN "MEDIUM" WHEN NTILE(4) over (OR..

[Lv.1 / 프로그래머스 / SQL] 과일로 만든 아이스크림 고르기

프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr  풀이(MySQL) FIRST_HALF 테이블의 TOTAL_ORDER가 3000을 초과하면서 FLAVOR의 INGREDIENT_TYPE이 fruit_based 인 아이스크림의 FLAVOR를 조회해야 한다. JOIN을 통해 각 FLAVOR의 INGREDIENT_TYPE을 구할 수 있다. SELECT FIRST_HALF.FLAVORFROM FIRST_HALFINNER JOIN ICECREAM_INFOON FIRST_HALF.FLAVOR = ICECREAM_INFO.FLAVORWHERE TOTAL_ORDER > 3000 AND I..

[Lv.1 / 프로그래머스 / SQL] 한 해에 잡은 물고기 수 구하기

프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  풀이 집계 함수인 COUNT를 이용하여 데이터의 개수를 조회할 수 있다. 그리고 YEAR 함수를 활용해 DATE 타입에서 연도를 구할 수 있다. SELECT COUNT(ID) AS FISH_COUNTFROM FISH_INFOWHERE YEAR(TIME) = '2021'

[Lv.1 / 프로그래머스 / SQL] 가장 큰 물고기 10마리 구하기

프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   풀이 조회 결과의 최대 개수를 제한하기 위해 LIMIT을 사용할 수 있다. SELECT ID, LENGTHFROM FISH_INFOORDER BY LENGTH DESC, ID ASCLIMIT 10

[Lv.1 / 프로그래머스 / SQL] 특정 형질을 가지는 대장균 찾기

프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   풀이 비트연산자를 통해 보유 형질 조건을 판별해야 한다. 비트연산을 수행할 때, 세 번째 형질을 나타내는 비트는 100인데, 이를 십진수로 표현하면 3이 아니라 4임에 유의하자. SELECT COUNT(1) AS COUNTFROM ECOLI_DATAWHERE (GENOTYPE & 1 OR GENOTYPE & 4) AND !(GENOTYPE & 2)

[Lv.1 / 프로그래머스 / SQL] 잡은 물고기의 평균 길이 구하기

프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   풀이 잡은 물고기의 평균 길이를 구해야 한다. AVG 함수로 평균 길이를 구할 수 있고, ROUND 함수를 통해 소수점의 반올림을 할 수 있다. 길이가 NULL인 물고기는 길이를 10으로 취급해야 하므로 NULL인 row를 특정 값으로 처리해주는 IFNULL 함수를 사용해야 한다.  SELECT ROUND(AVG(IFNULL(LENGTH, 10)), 2) AS AVERAGE_LENGTHFROM FISH_INFO

[Lv.3 / 프로그래머스 / SQL] 대장균의 크기에 따라 분류하기 1

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 각 구간 조건에 따라 Case 문으로 분류하여 SIZE를 달리 표현할 수 있다. SELECT ID, CASE WHEN SIZE_OF_COLONY > 1000 THEN "HIGH" WHEN SIZE_OF_COLONY > 100 THEN "MEDIUM" ELSE "LOW" END AS SIZE FROM ECOLI_DATA ORDER BY ID

[Lv.3 / 프로그래머스 / SQL] 대장균들의 자식의 수 구하기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 PARENT_ID가 자신의 ID와 일치하는 행의 개수를 세 CHILD_COUNT 컬럼과 함께 출력해야 한다. 자식이 없어서 Null로 나타난 경우, IFNULL 구문 등을 사용하여 0으로 대체하여 출력해야 한다. SELECT ID, IFNULL( ( SELECT COUNT(*) FROM ECOLI_DATA GROUP BY PARENT_ID HAVING PARENT_ID = ID ), 0 ) AS CHILD_COUNT FROM ECOLI_DATA ORDER BY ID

[Lv.2 / 프로그래머스 / SQL] 업그레이드 된 아이템 구하기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 a 아이템의 parent_item 이 null이 아닌 b 인 경우, b의 Rarity가 RARE인 것을 출력하면 된다. 서브쿼리를 활용하여 해결했다. SELECT INFO.ITEM_ID, INFO.ITEM_NAME, INFO.RARITY FROM ITEM_INFO AS INFO, ITEM_TREE AS TREE WHERE INFO.ITEM_ID = TREE.ITEM_ID AND (SELECT DISTINCT RARITY FROM ITEM_INFO AS INFO2, ITEM_TREE AS TREE2 WHE..

반응형