[프로그래머스] 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 코테 문제들의 난이도가 어려운 것 같습니다
공부를 더 해야겠어요
'문제풀이(ps)' 카테고리의 다른 글
LeetHub 디렉토리 구조 백준허브처럼 변경하기 (4) | 2023.07.26 |
---|---|
[백준] 3197번 - 백조의호수 (자바, java) (4) | 2023.07.25 |
[백준] 17070번 파이프 옮기기 1 (python 파이썬) (10) | 2022.04.28 |
[백준]11049번 행렬 곱셈 순서(python 파이썬) (18) | 2022.04.26 |
[백준] 12865번 평범한 배낭(python 파이썬) (6) | 2022.04.25 |
블로그의 정보
코딩무비
코딩무비