본문 바로가기
코딩 테스트

SQL코딩테스트1 | SELECT문

by 카프리썬 2021. 4. 3.
728x90

프로그래머스SQL 뽀개기!! 일주일동안 매일 하나의 유형 다 뽀개기! 챌린지!

아래의 문제는 프로그래머스 SQL코득점 Kit 내용이며 코드는 직접 푼 내용입니다.


1. 모든레코드 조회하기

동물 보호소에 들어온 모든 동물의 정보를 ANIMAL_ID순으로 조회

SELECT ANIMAL_ID,ANIMAL_TYPE,DATETIME,INTAKE_CONDITION,NAME,SEX_UPON_INTAKE 
FROM ANIMAL_INS 
order by ANIMAL_ID;

2.역순정렬하기

모든 동물의 이름과 보호 시작일을 조회

SELECT NAME,DATETIME
FROM ANIMAL_INS
ORDER BY ANIMAL_ID DESC;

3.아픈동물찾기

동물 보호소에 들어온 동물 중 아픈 동물의 아이디와 이름을 조회

아픈동물 : INTAKE_CONDITION이 Sick 인 경우를 뜻함

SELECT ANIMAL_ID, NAME
FROM ANIMAL_INS
WHERE INTAKE_CONDITION = 'Sick'
ORDER BY ANIMAL_ID

4.어린동물찾기

동물 보호소에 들어온 동물 중 젊은 동물의 아이디와 이름을 조회

젊은동물 : INTAKE_CONDITION이 Aged가 아닌 경우를 뜻함

SELECT animal_id, name
from animal_ins
where intake_condition !='Aged'
order by animal_id

5.동물아이디와 이름

동물 보호소에 들어온 모든 동물의 아이디와 이름을 ANIMAL_ID순으로 조회

SELECT animal_id, name
from animal_ins
order by animal_id

6.여러기준으로 정렬하기

동물 보호소에 들어온 모든 동물의 아이디와 이름, 보호 시작일을 이름 순으로 조회

단, 이름이 같은 동물 중에서는 보호를 나중에 시작한 동물을 먼저 보여줘야 합니다

SELECT animal_id,name,datetime
from animal_ins
order by name,datetime desc

*결과에 ID도 같이 나와있길래 정렬순도 ID가 필요한줄 알았다. 원래 SELECT하는 컬럼에 있어서 빼면 되는 것이다!

중복되는 이름을 WHERE조건에 넣어서 DATETIME테스트해봄

 

7.상위N개레코드

동물 보호소에 가장 먼저 들어온 동물의 이름을 조회

SELECT name
from animal_ins
order by datetime
limit 1

*단 하나의 결과값이기에 '하나'만 뽑으면 되서 LIMIT 1  

반응형

$(document).ready(function() { var $toc = $("#toc"); $toc.toc({content: ".tt_article_useless_p_margin", headings: "h2,h3,h4"}); });