[프로그래머스] SQL 코테 정복하기
by 코딩무비전체 문제
코딩테스트 연습
기초부터 차근차근, 직접 코드를 작성해 보세요.
programmers.co.kr
더보기를 클릭하셔서 각 문제를 확인 할 수 있습니다!
select 문
문제
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
모든 레코드 정복하기
select * from animal_ins order by animal_id;
역순 정렬하기
SELECT NAME, DATETIME FROM ANIMAL_INS ORDER BY ANIMAL_ID DESC
아픈 동물 찾기
SELECT ANIMAL_ID,NAME FROM ANIMAL_INS WHERE INTAKE_CONDITION='Sick';
어린 동물 찾기
SELECT ANIMAL_ID, NAME FROM ANIMAL_INS WHERE INTAKE_CONDITION != 'Aged';
동물의 아이디와 이름
SELECT ANIMAL_ID, NAME FROM ANIMAL_INS order by ANIMAL_ID;
여러기준 정렬하기
SELECT ANIMAL_ID, NAME, DATETIME FROM ANIMAL_INS ORDER BY NAME asc ,DATETIME DESC;
상위 n개 레코드
SELECT NAME FROM ANIMAL_INS ORDER BY DATETIME LIMIT 1;
SUM, MAX , MIN
문제
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
최대값 구하기
SELECT DATETIME AS '시간' FROM ANIMAL_INS ORDER BY DATETIME DESC LIMIT 1;
최솟값 구하기
SELECT DATETIME AS '시간' FROM ANIMAL_INS ORDER BY DATETIME LIMIT 1;
동물수 구하기
SELECT COUNT(*) AS count FROM ANIMAL_INS;
중복 제거하기
SELECT COUNT(DISTINCT(NAME)) FROM ANIMAL_INS;
GROUP BY
문제
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
고양이와 개는 몇 마리 있을까
SELECT ANIMAL_TYPE, COUNT(*) count FROM ANIMAL_INS GROUP BY ANIMAL_TYPE ORDER BY ANIMAL_TYPE;
동명 동물 수 찾기
SELECT NAME, COUNT(*) COUNT FROM ANIMAL_INS GROUP BY NAME HAVING COUNT(NAME)>1 ORDER BY NAME;
입양 시각 구하기(1)
SELECT DATE_FORMAT(DATETIME,"%H") HOUR , COUNT(*) COUNT FROM ANIMAL_OUTS GROUP BY HOUR HAVING HOUR BETWEEN 9 AND 20 ORDER BY HOUR;
입양 시각 구하기(2)
못풀었어요
IS NULL
문제
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
이름이 없는 동물의 아이디
SELECT ANIMAL_ID FROM ANIMAL_INS WHERE NAME IS NULL;
이름이 있는 동물의 아이디
SELECT ANIMAL_ID FROM ANIMAL_INS WHERE NAME IS NOT NULL;
NULL 처리하기
SELECT ANIMAL_TYPE, IF(NAME IS NOT NULL,NAME,"No name") NAME ,SEX_UPON_INTAKE FROM ANIMAL_INS
JOIN
문제
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
없어진 기록 찾기
SELECT ANIMAL_ID,NAME FROM ANIMAL_OUTS WHERE ANIMAL_ID NOT IN ( SELECT ANIMAL_ID FROM ANIMAL_INS );
있었는데요 없었습니다
SELECT I.ANIMAL_ID,I.NAME FROM ANIMAL_INS AS I JOIN ANIMAL_OUTS AS O ON I.ANIMAL_ID = O.ANIMAL_ID WHERE I.DATETIME> O.DATETIME ORDER BY I.DATETIME;
오랜 기간 보호한 동물(1)
SELECT NAME,DATETIME FROM ANIMAL_INS AS I WHERE I.ANIMAL_ID NOT IN (SELECT ANIMAL_ID FROM ANIMAL_OUTS ) ORDER BY I.DATETIME LIMIT 3
보호소에서 중성화한 동물
SELECT I.ANIMAL_ID , I.ANIMAL_TYPE , I.NAME FROM ANIMAL_INS AS I JOIN ANIMAL_OUTS AS O ON I.ANIMAL_ID = O.ANIMAL_ID WHERE I.SEX_UPON_INTAKE LIKE 'Intact%' AND O.SEX_UPON_OUTCOME NOT LIKE 'Intact%'
OR
SELECT ANIMAL_ID,ANIMAL_TYPE,NAME FROM ANIMAL_INS WHERE SEX_UPON_INTAKE LIKE "Intact%" AND ANIMAL_ID IN ( SELECT ANIMAL_ID FROM ANIMAL_OUTS WHERE SEX_UPON_OUTCOME NOT LIKE "Intact%" );
String, Date
문제
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
루시와 엘라 찾기
SELECT ANIMAL_ID,NAME,SEX_UPON_INTAKE FROM ANIMAL_INS WHERE NAME in ('Lucy', 'Ella', 'Pickle', 'Rogan', 'Sabrina', 'Mitty') ORDER BY ANIMAL_ID ASC
이름에 el이 들어가는 동물 찾기
-- 코드를 입력하세요 SELECT ANIMAL_ID, NAME FROM ANIMAL_INS WHERE NAME LIKE '%EL%' and animal_type = 'Dog' order by name;
중성화 여부 파악하기
SELECT ANIMAL_ID,NAME,IF(SEX_UPON_INTAKE LIKE "Neutered%" or SEX_UPON_INTAKE LIKE "Spayed%","O","X") 중성화 FROM ANIMAL_INS
오랜 기간 보호한 동물
-- 코드를 입력하세요 SELECT O.ANIMAL_ID,O.NAME FROM ANIMAL_OUTS AS O JOIN ANIMAL_INS AS I ON O.ANIMAL_ID = I.ANIMAL_ID ORDER BY O.DATETIME - I.DATETIME DESC LIMIT 2
DATETIME에서 DATE로 형변환
SELECT ANIMAL_ID , NAME , DATE_FORMAT(DATETIME,"%Y-%m-%d") 날짜 FROM ANIMAL_INS
추가문제
우유와 요거트가 담긴 장바구니
코딩테스트 연습 - 우유와 요거트가 담긴 장바구니
CART_PRODUCTS 테이블은 장바구니에 담긴 상품 정보를 담은 테이블입니다. CART_PRODUCTS 테이블의 구조는 다음과 같으며, ID, CART_ID, NAME, PRICE는 각각 테이블의 아이디, 장바구니의 아이디, 상품 종류, 가
programmers.co.kr
SELECT CART_ID FROM CART_PRODUCTS WHERE CART_ID IN ( SELECT CART_ID FROM CART_PRODUCTS WHERE NAME = 'Milk' ) AND NAME = 'Yogurt';
헤비 유저가 소유한 장소
코딩테스트 연습 - 헤비 유저가 소유한 장소
PLACES 테이블은 공간 임대 서비스에 등록된 공간의 정보를 담은 테이블입니다. PLACES 테이블의 구조는 다음과 같으며 ID, NAME, HOST_ID는 각각 공간의 아이디, 이름, 공간을 소유한 유저의 아이디를
programmers.co.kr
SELECT * FROM PLACES WHERE HOST_ID IN ( SELECT HOST_ID FROM PLACES GROUP BY HOST_ID HAVING COUNT(HOST_ID)>=2 ) ORDER BY ID ASC
++ 요즘 SQL 코테 문제들의 난이도가 어려운 것 같습니다
공부를 더 해야겠어요
블로그의 정보
코딩무비
코딩무비