본문 바로가기
카테고리 없음

[프로그래머스][SQL] SELECT

by CamelLion 2021. 1. 14.
반응형

📌 SELECT

[모든 레코드 조회하기]

동물 보호소에 들어온 모든 동물의 정보를 ANIMAL_ID순으로 조회하는 SQL문을 작성해주세요.

SELECT * FROM ANIMAL_INS;
-- '*'을 통해서 전체를 조회할 수 있다.

 

[역순 정렬하기]

동물 보호소에 들어온 모든 동물의 이름과 보호 시작일을 조회하는 SQL문을 작성해주세요.
이때 결과는 ANIMAL_ID 역순으로 보여주세요.

SELECT NAME, DATETIME
FROM ANIMAL_INS
ORDER BY ANIMAL_ID DESC;

-- ORDER BY를 통해 조회 순서를 지정할 수 있다.
-- DESC : 내림차순(역순정렬)
-- ASC  : 오름차순

 

[아픈 동물 찾기]

동물 보호소에 들어온 동물 중 아픈 동물의 아이디와 이름을 조회하는 SQL 문을 작성해주세요.
이때 결과는 아이디 순으로 조회해주세요.

SELECT ANIMAL_ID, NAME
FROM ANIMAL_INS
WHERE INTAKE_CONDITION = "Sick"    -- INTAKE_CONDITION = 'sick' 해도 된다. (대소문자를 구분하지 않음)
ORDER BY ANIMAL_ID;

-- WHERE 절을 통해 조건문을 적을 수 있다.

 

[어린 동물 찾기]

동물 보호소에 들어온 동물 중 젊은 동물의 아이디와 이름을 조회하는 SQL 문을 작성해주세요.
이때 결과는 아이디 순으로 조회해주세요.

SELECT ANIMAL_ID, NAME
FROM ANIMAL_INS
WHERE INTAKE_CONDITION != 'aged'
ORDER BY ANIMAL_ID;

 

[동물의 아이디와 이름]

동물 보호소에 들어온 모든 동물의 아이디와 이름을 ANIMAL_ID순으로 조회하는 SQL문을 작성해주세요.

SELECT ANIMAL_Id, NAME
FROM ANIMAL_INS
ORDER BY ANIMAL_ID;

 

[여러 기준으로 정렬하기]

동물 보호소에 들어온 모든 동물의 아이디와 이름, 보호 시작일을 이름 순으로 조회하는 SQL문을 작성해주세요. 단, 이름이 같은 동물 중에서는 보호를 나중에 시작한 동물을 먼저 보여줘야 합니다.

SELECT ANIMAL_ID, NAME, DATETIME
FROM ANIMAL_INS
ORDER BY NAME ASC, DATETIME DESC;

-- ORDER BY 에 여러 기준을 넣어줄 수 있다.
-- 위와 같이 작성한다면
-- 우선 NAME을 기준으로 오름차순으로 정렬 후
-- DATETIME을 기준으로 내림차순으로 한번 더 정렬한다.

 

[상위 n개 레코드]

동물 보호소에 가장 먼저 들어온 동물의 이름을 조회하는 SQL 문을 작성해주세요.

SELECT NAME
FROM ANIMAL_INS
ORDER BY DATETIME
LIMIT 1;

-- DATETIME으로 정렬을 한 후 (default 값은 ASC, 오름차순이다)
-- LIMIT 를 통해서 원하는 개수를 가져올 수 있다.

-- ex)  LIMIT 1 : 맨 위에서부터 1개까지 정보 조회
--      LIMIT 3 : 맨 위에서부터 3개까지 정보 조회
--      LIMIT 2,6 : 위에서 2번째부터 6번째까지의 정보 조회
반응형