1. 문제 목적
WHERE 절을 사용하여 특정 조건을 만족하는 데이터를 필터링하고 ORDER BY 절을 통해 결과를 정렬하는 방법을 학습하는 데 목적이 있다. 특히, 특정 조건(INTAKE_CONDITION = 'Sick')에 해당하는 데이터만 필터링하여 결과를 출력하는 SQL의 기본적인 쿼리 작성법을 익히는 것을 목표로 한다.
2. 핵심 개념
WHERE 절
- 정의: WHERE 절은 특정 조건을 지정하여 데이터를 필터링하는 데 사용된다
SELECT 열이름 FROM 테이블이름 WHERE 조건;
SELECT * FROM 테이블 WHERE 열이름 = '값';
2.3 ORDER BY 절
- 정의: 조회된 데이터를 특정 열 기준으로 정렬하는 데 사용된다.
SELECT 열이름 FROM 테이블이름 ORDER BY 열이름 [ASC|DESC];
- ASC: 오름차순(기본값).
- DESC: 내림차순.
3. 문제 해결 절차
- 요구사항 분석:
- ANIMAL_INS 테이블에서 아픈 동물(INTAKE_CONDITION = 'Sick')만 조회해야 한다.
- 결과는 ANIMAL_ID와 NAME 열을 포함해야 한다.
- 결과는 ANIMAL_ID 기준으로 오름차순(ASC) 정렬되어야 한다.
- 접근 방법:
- SELECT 문을 사용하여 조회할 열(ANIMAL_ID, NAME)을 명시.
- WHERE 절을 사용하여 INTAKE_CONDITION = 'Sick' 조건을 지정.
- ORDER BY 절을 추가하여 ANIMAL_ID 기준으로 정렬.
- SQL 문 작성 절차:
- SELECT 문으로 조회할 열을 나열.
- WHERE 절로 조건을 명시.
- ORDER BY 절로 정렬 기준을 추가.
4. 코드 작성
-- ANIMAL_INS 테이블에서 ANIMAL_ID와 NAME 열을 조회
SELECT ANIMAL_ID, NAME
FROM ANIMAL_INS
-- INTAKE_CONDITION이 'Sick'인 데이터만 필터링
WHERE INTAKE_CONDITION = 'Sick'
-- ANIMAL_ID 기준으로 오름차순 정렬
ORDER BY ANIMAL_ID ASC;
코드 설명:
- SELECT ANIMAL_ID, NAME: 테이블에서 ANIMAL_ID와 NAME 열만 선택적으로 조회.
- FROM ANIMAL_INS: 데이터를 조회할 테이블을 명시.
- WHERE INTAKE_CONDITION = 'Sick': INTAKE_CONDITION 열이 'Sick'인 데이터만 필터링.
- ORDER BY ANIMAL_ID ASC: 결과를 ANIMAL_ID 기준으로 오름차순으로 정렬.
5. 코드 분석
SELECT 문
- SELECT ANIMAL_ID, NAME:
- 테이블의 모든 열 대신 필요한 열(ANIMAL_ID, NAME)만 선택적으로 조회하여 불필요한 데이터 로드를 줄인다.
WHERE 절
- WHERE INTAKE_CONDITION = 'Sick':조건은 = 연산자를 사용하여 정확히 일치하는 값을 검색한다.
- 조건에 따라 데이터를 필터링하여 INTAKE_CONDITION 값이 'Sick'인 행만 결과로 반환한다.
ORDER BY 절
- ORDER BY ANIMAL_ID ASC:ASC는 명시하지 않아도 기본값으로 적용되지만, 명시적으로 작성하면 가독성이 높아진다.
- 조회된 데이터를 ANIMAL_ID 기준으로 오름차순으로 정렬한다.
'SQL Kit > SELECT' 카테고리의 다른 글
동물의 아이디와 이름 [ 프로그래머스 | SQL Kit | Level 1 ] (0) | 2025.03.01 |
---|---|
어린 동물 찾기 [ 프로그래머스 | SQL Kit | Level 1 ] (0) | 2025.03.01 |
역순 정렬하기 [ 프로그래머스 | SQL Kit | Level 1 ] (0) | 2025.03.01 |
모든 레코드 조회하기 [ 프로그래머스 | SQL Kit | Level 1 ] (0) | 2025.03.01 |
조건에 부합하는 중고거래 댓글 조회하기 [ 프로그래머스 | SQL Kit | Level 1 ] (0) | 2025.03.01 |