[프로그래머스] 분기별 분화된 대장균의 개체 수 구하기

2024. 9. 19. 14:54·알고리즘/SQL

 

Question

 

각 분기(QUARTER)별 분화된 대장균의 개체의 총 수(ECOLI_COUNT)를 출력하는 SQL 문을 작성해주세요. 이때 각 분기에는 'Q' 를 붙이고 분기에 대해 오름차순으로 정렬해주세요. 대장균 개체가 분화되지 않은 분기는 없습니다.

 

 

Pseudocode

 

 

  1. 테이블 정의:
    • ECOLI_DATA: 대장균 개체의 정보를 담고 있는 테이블.
  2. 분기 계산:
    • DIFFERENTIATION_DATE의 월을 기준으로 해당 개체가 속한 분기를 계산합니다.
    • MONTH(DIFFERENTIATION_DATE)를 사용하여 월을 추출합니다.
    • (MONTH(DIFFERENTIATION_DATE) - 1) / 3를 사용하여 분기를 계산합니다.
      • 월을 1에서 12까지 나눈 후 3으로 나누어 분기를 결정합니다.
      • TRUNCATE(..., 0)을 사용하여 소수점을 버립니다.
      • + 1을 통해 1부터 시작하는 분기를 만듭니다.
    • 'Q'를 결합하여 결과를 '1Q', '2Q', '3Q', '4Q' 형식으로 만듭니다.
  3. 집계:
    • 각 분기별로 개체 수를 계산합니다 (COUNT(*)).
  4. 정렬:
    • 결과를 분기(QUARTER) 기준으로 오름차순으로 정렬합니다.

 

 

 

Code

 

select concat(
    TRUNCATE((month(DIFFERENTIATION_DATE) - 1) / 3, 0) + 1, 
    'Q') QUARTER, count(*) ECOLI_COUNT
from ECOLI_DATA
group by QUARTER
order by QUARTER

'알고리즘 > SQL' 카테고리의 다른 글

[프로그래머스] 오프라인/온라인 판매 데이터 통합하기  (0) 2024.09.20
[프로그래머스] 노선별 평균 역 사이 거리 조회하기  (0) 2024.09.20
[프로그래머스] 조건에 부합하는 중고거래 댓글 조회하기  (0) 2024.09.19
[프로그래머스] 업그레이드 할 수 없는 아이템 구하기  (0) 2024.09.19
[프로그래머스] 대장균들의 자식의 수 구하기  (0) 2024.09.19
'알고리즘/SQL' 카테고리의 다른 글
  • [프로그래머스] 오프라인/온라인 판매 데이터 통합하기
  • [프로그래머스] 노선별 평균 역 사이 거리 조회하기
  • [프로그래머스] 조건에 부합하는 중고거래 댓글 조회하기
  • [프로그래머스] 업그레이드 할 수 없는 아이템 구하기
Noaahhh
Noaahhh
  • Noaahhh
    노아
    Noaahhh
  • 전체
    오늘
    어제
    • 분류 전체보기 (118)
      • 프로젝트 (4)
      • 알고리즘 (113)
        • SQL (108)
        • CP (5)
      • 자격증 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    contest395
    Spring
    SQL문제
    cp
    PCSQL
    OAuth2.0
    abc421
    SQL
    springboot
    contest397
    집계함수
    경쟁적프로그래밍
    ABC
    cp초보
    어린 동물 찾기
    JWT
    코딩테스트
    atcoder beginner contest
    카카오로그인
    PS
    JPQL
    인증/인가
    아픈 동물 찾기
    소셜로그인
    프로그래머스
    spingboot
    querydsl
    atcoder
    pasql
    프로그래밍대회
  • hELLO· Designed By정상우.v4.10.5
Noaahhh
[프로그래머스] 분기별 분화된 대장균의 개체 수 구하기
상단으로

티스토리툴바