SQL
-
Programmers - 연도 별 평균 미세먼지 농도 조회하기MySQL_Programmers/Level2 2025. 4. 8. 15:10
문제 설명AIR_POLLUTION 테이블은 전국의 월별 미세먼지 정보를 담은 테이블입니다. AIR_POLLUTION 테이블의 구조는 다음과 같으며 LOCATION1, LOCATION2, YM, PM_VAL1, PM_VAL2은 각각 지역구분1, 지역구분2, 측정일, 미세먼지 오염도, 초미세먼지 오염도를 의미합니다.Column nameTypeNullableLOCATION1VARCHARFALSELOCATION2VARCHARFALSEYMDATEFALSEPM_VAL1NUMBERFLASEPM_VAL2NUMBERFLASE문제AIR_POLLUTION 테이블에서 수원 지역의 연도 별 평균 미세먼지 오염도와 평균 초미세먼지 오염도를 조회하는 SQL문을 작성해주세요. 이때, 평균 미세먼지 오염도와 평균 초미세먼지 오염도의 ..
-
Programmers - 노선별 평균 역 사이 거리 조회하기MySQL_Programmers/Level2 2025. 4. 7. 13:20
문제 설명 SUBWAY_DISTANCE 테이블은 서울지하철 2호선의 역 간 거리 정보를 담은 테이블입니다. SUBWAY_DISTANCE 테이블의 구조는 다음과 같으며 LINE, NO, ROUTE, STATION_NAME, D_BETWEEN_DIST, D_CUMULATIVE는 각각 호선, 순번, 노선, 역 이름, 역 사이 거리, 노선별 누계 거리를 의미합니다.Column nameTypeNullableLINEVARCHAR(10)FALSENONUMBERFALSEROUTEVARCHAR(50)FALSESTATION_NAMEVARCHAR(100)FLASED_BETWEEN_DISTNUMBERFLASED_CUMULATIVENUMBERFLASE문제 SUBWAY_DISTANCE 테이블에서 노선별로 노선, 총 누계 거리,..
-
MySql - GroupBy 및 ONLY_FULL_GROUP_BY 파헤치기DataBase/MySql 2025. 4. 1. 10:26
GROUP BY에 대한 설명GROUP BY는 SQL에서 데이터를 그룹화하여 집계(aggregation) 함수를 적용할 때 사용됩니다. GROUP BY는 데이터를 하나의 기준으로 묶고, 각 그룹에 대해 계산을 수행하도록 합니다. 예를 들어, 부서별 평균 급여나, 제품별 총 판매액 등을 계산할 때 사용됩니다.기본 구문SELECT 컬럼명, 집계함수(컬럼명)FROM 테이블명GROUP BY 그룹화할_컬럼;그룹화할_컬럼: 데이터를 그룹화할 기준이 되는 컬럼입니다.집계함수: COUNT(), SUM(), AVG(), MAX(), MIN()과 같은 함수가 해당 그룹에 대해 계산을 수행합니다.예시: 부서별 평균 급여 구하기SELECT department_id, AVG(salary)FROM employeesGROUP BY ..
-
Programmers - 물고기 종류 별 잡은 수 구하기MySQL_Programmers/Level2 2025. 4. 1. 10:22
문제설명 낚시앱에서 사용하는 FISH_INFO 테이블은 잡은 물고기들의 정보를 담고 있습니다. FISH_INFO 테이블의 구조는 다음과 같으며 ID, FISH_TYPE, LENGTH, TIME은 각각 잡은 물고기의 ID, 물고기의 종류(숫자), 잡은 물고기의 길이(cm), 물고기를 잡은 날짜를 나타냅니다.Column nameTypeNullableIDINTEGERFALSEFISH_TYPEINTEGERFALSELENGTHFLOATTRUETIMEDATEFALSE단, 잡은 물고기의 길이가 10cm 이하일 경우에는 LENGTH 가 NULL 이며, LENGTH 에 NULL 만 있는 경우는 없습니다.FISH_NAME_INFO 테이블은 물고기의 이름에 대한 정보를 담고 있습니다. FISH_NAME_INFO 테이블의 구..
-
Programmers - 월별 잡은 물고기 수 구하기MySQL_Programmers/Level2 2025. 3. 28. 14:10
문제 설명낚시앱에서 사용하는 FISH_INFO 테이블은 잡은 물고기들의 정보를 담고 있습니다. FISH_INFO 테이블의 구조는 다음과 같으며 ID, FISH_TYPE, LENGTH, TIME은 각각 잡은 물고기의 ID, 물고기의 종류(숫자), 잡은 물고기의 길이(cm), 물고기를 잡은 날짜를 나타냅니다.Column nameTypeNullableIDINTEGERFALSEFISH_TYPEINTEGERFALSELENGTHFLOATTRUETIMEDATEFALSE단, 잡은 물고기의 길이가 10cm 이하일 경우에는 LENGTH 가 NULL 이며, LENGTH 에 NULL 만 있는 경우는 없습니다.문제월별 잡은 물고기의 수와 월을 출력하는 SQL문을 작성해주세요.잡은 물고기 수 컬럼명은 FISH_COUNT, 월 컬..
-
Programmers - 특정 물고기를 잡은 총 수 구하기MySQL_Programmers/Level2 2025. 3. 27. 15:08
문제 설명 낚시앱에서 사용하는 FISH_INFO 테이블은 잡은 물고기들의 정보를 담고 있습니다. FISH_INFO 테이블의 구조는 다음과 같으며 ID, FISH_TYPE, LENGTH, TIME은 각각 잡은 물고기의 ID, 물고기의 종류(숫자), 잡은 물고기의 길이(cm), 물고기를 잡은 날짜를 나타냅니다.Column nameTypeNullableIDINTEGERFALSEFISH_TYPEINTEGERFALSELENGTHFLOATTRUETIMEDATEFALSE단, 잡은 물고기의 길이가 10cm 이하일 경우에는 LENGTH 가 NULL 이며, LENGTH 에 NULL 만 있는 경우는 없습니다.FISH_NAME_INFO 테이블은 물고기의 이름에 대한 정보를 담고 있습니다. FISH_NAME_INFO 테이블의..
-
Programmers - 분기별 분화된 대장균의 개체 수 구하기MySQL_Programmers/Level2 2025. 3. 26. 15:15
문제 설명 대장균들은 일정 주기로 분화하며, 분화를 시작한 개체를 부모 개체, 분화가 되어 나온 개체를 자식 개체라고 합니다.다음은 실험실에서 배양한 대장균들의 정보를 담은 ECOLI_DATA 테이블입니다. ECOLI_DATA 테이블의 구조는 다음과 같으며, ID, PARENT_ID, SIZE_OF_COLONY, DIFFERENTIATION_DATE, GENOTYPE 은 각각 대장균 개체의 ID, 부모 개체의 ID, 개체의 크기, 분화되어 나온 날짜, 개체의 형질을 나타냅니다.Column nameTypeNullableIDINTEGERFALSEPARENT_IDINTEGERTRUESIZE_OF_COLONYINTEGERFALSEDIFFERENTIATION_DATEDATEFALSEGENOTYPEINTEGERFA..
-
Programmers - 연도별 대장균 크기의 편차 구하기MySQL_Programmers/Level2 2025. 3. 20. 16:47
문제 설명대장균들은 일정 주기로 분화하며, 분화를 시작한 개체를 부모 개체, 분화가 되어 나온 개체를 자식 개체라고 합니다.다음은 실험실에서 배양한 대장균들의 정보를 담은 ECOLI_DATA 테이블입니다. ECOLI_DATA 테이블의 구조는 다음과 같으며, ID, PARENT_ID, SIZE_OF_COLONY, DIFFERENTIATION_DATE, GENOTYPE 은 각각 대장균 개체의 ID, 부모 개체의 ID, 개체의 크기, 분화되어 나온 날짜, 개체의 형질을 나타냅니다.Column nameTypeNullableIDINTEGERFALSEPARENT_IDINTEGERTRUESIZE_OF_COLONYINTEGERFALSEDIFFERENTIATION_DATEDATEFALSEGENOTYPEINTEGERFAL..