관리 메뉴

JIE0025

[프로그래머스] SQL SELECT 아픈 동물 찾기 : WHERE 본문

알고리즘/프로그래머스

[프로그래머스] SQL SELECT 아픈 동물 찾기 : WHERE

Kangjieun11 2021. 4. 5. 21:51
728x90


모든 정보를 얻고 싶은 게 아닌,

어떤 조건에 부합하는 데이터에 대해서만 조회하고 싶은 경우에 사용하는 것이 WHERE 이다.


EX) 조건 예시
ANIMAL_TYPE 가 'Dog' 인 데이터
INTAKE_CONDITION 이 'Sick'인 데이터

SELECT <열> FROM <테이블 이름> WHERE 조건식

<조건식>

ANIMAL_TYPE = 'Dog' 과 같이 쓸 수 있다.

>, <, >=, <=

!=, =

SELECT * FROM grade

WHERE score >= 50 ;



OR, AND 를 통해 여러개의 조건을 나열할 수도 있다.

SELECT * FROM ANIMAL_INS

WHERE ANIMAL_TYPE = 'Dog' AND INTAKE_CONDITION = 'Sick';


  • BETWEEN A AND B

성적이 90이상 100이하인 학생들에게 1등급을 주어야 하는 상황에서 학생들을 조회해야 하는 경우에 BETWEEN을 사용한다.

SELECT * FROM grade

WHERE score BETWEEN 90 AND 100;

  • IN

만약 성적이 80,90,100 인 학생들에게 사탕을 주기로 했다.
그럴 때 사용하는 것이 바로 IN이다.

SELECT * FROM score

WHERE score IN(80,90,100);


하지만 IN 구문을 이용하면 다음과 같이 쿼리를 작성할 수 있습니다.

SELECT * FROM employee

WHERE salary IN (300,400,500,600);



문제를 풀어보자.

동물 보호소에 들어온 동물 중 아픈 동물 아이디와 이름을 조회해야한다.

아프다는 것은 INTAKE_CONDITION의 값이 'Sick' 인 경우를 뜻한다.

따라서

SELECT ANIMAL_ID, NAME

FROM ANIMAL_INS

WHERE INTAKE_CONDITION = 'Sick';