본문 바로가기

mysql5

MySQL | 비트 연산하기 &, NOT - 프로그래머스 코딩테스트 1단계 "특정 형질을 가지는 대장균 찾기" 문제풀이 프로그래머스에 비트 연산을 해야하는 MySQL문제가 종종 보이는데요. 정리해놓으면 좋을 것 같아서 문제 풀이를 한번 작성해 보겠습니다. https://school.programmers.co.kr/learn/courses/30/lessons/301646 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 : 2번 형질을 보유하지 않으면서 1번이나 3번 형질을 보유하고 있는 대장균 개체의 수(COUNT)를 출력하는 SQL 문을 작성해주세요. 1번과 3번 형질을 모두 보유하고 있는 경우도 1번이나 3번 형질을 보유하고 있는 경우에 포함합니다. [1] 2진법으로.. 2024. 4. 8.
MySQL | JOIN을 이용하여 차집합 구하기 - 프로그래머스 코딩테스트 3단계 "오랜 기간 보호한 동물(1)" 풀이 MySQL에서 JOIN을 이용하여 두 테이블 간의 정보를 조회할 때, 차집합(Set Difference)을 구해야 할 경우가 있습니다. 이럴 때 LEFT JOIN,RIGHT JOIN에 WHERE구문을 추가 활용하여 쉽게 표현해볼 수 있습니다. https://school.programmers.co.kr/learn/courses/30/lessons/59044 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 관련 문제로 프로그래머스 MySQL 코딩테스트 3단계 문제 오랜 기간 보호한 동물(1) 풀이를 함께 첨부해 보겠습니다. 문제 상황 : 아직 입양을 못 간 동.. 2024. 4. 8.
MySQL | 랭킹, 순위 매기기 함수 - RANK() / DENSE_RANK() / ROW_NUMBER() / NTILE() 특정 열의 값에 대해 순위를(랭킹을) 매기기 위해서 다음과 같은 함수를 사용해볼 수 있습니다. RANK DENSE_RANK ROW_NUMBER NTILE 기본적인 함수 형식은 아래과 같습니다. RANK() OVER ( [PARTITION BY colName1] ORDER BY colName2 [DESC] ) DENSE_RANK() OVER ( [PARTITION BY colName1] ORDER BY colName2 [DESC] ) ROW_NUMBER() OVER ( [PARTITION BY colName1] ORDER BY colName2 [DESC] ) NTILE() OVER ( [PARTITION BY colName1] ORDER BY colName2 [DESC] ) # [대괄호] 안의 값은 선택.. 2024. 4. 5.
MySQL | RIGHT JOIN, 서브쿼리 함께 사용하여 문제풀기 - 프로그래머스 코딩테스트 2단계 "업그레이드 된 아이템 구하기" 어느 한 게임에서 사용되는 아이템들은 업그레이드가 가능합니다. 'ITEM_A'->'ITEM_B'와 같이 업그레이드가 가능할 때 'ITEM_A'를 'ITEM_B' 의 PARENT 아이템, PARENT 아이템이 없는 아이템을 ROOT 아이템이라고 합니다. (중략).... 아이템의 희귀도가 'RARE'인 아이템들의 모든 다음 업그레이드 아이템의 아이템 ID(ITEM_ID), 아이템 명(ITEM_NAME), 아이템의 희귀도(RARITY)를 출력하는 SQL 문을 작성해 주세요. 이때 결과는 아이템 ID를 기준으로 내림차순 정렬해 주세요. 처음에 대충 생각하고 접근했더니 원하는 정답을 얻어내기 어려웠던 문제입니다! 다시 정신을 집중하고, RIGHT 조인과 서브쿼리를 이용해서 문제를 바로 해결했어요. 제가 풀이한 방.. 2024. 4. 5.
MySQL | 서브쿼리(SubQuery), 자기참조를 응용한 문제풀이 - 프로그래머스 2단계 코딩테스트 프로그래머스의 MySQL 코딩테스트 연습문제 '노선별 평균 역 사이 거리 조회하기' 를 풀었습니다. 서브쿼리와 ORDER BY에 대해 정리해두기 좋은 문제인 것 같아 블로그 포스팅을 해 보도록 하겠습니다. https://school.programmers.co.kr/learn/courses/30/lessons/284531 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 먼저, 1차로 제출한 정답코드입니다. (오답) SELECT ROUTE, CONCAT(ROUND(SUM(D_BETWEEN_DIST), 1), "km") AS TOTAL_DISTANCE, CONC.. 2024. 4. 4.