몸과 마음이 건전한 SW 개발자

프로그래머스 SQL 고득점 Kit Lv 1 SELECT (2) 6 문제 모음 본문

SQL

프로그래머스 SQL 고득점 Kit Lv 1 SELECT (2) 6 문제 모음

스위태니 2023. 12. 29. 17:28

11. 아픈 동물 찾기

https://school.programmers.co.kr/learn/courses/30/lessons/59036

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT
	ANIMAL_ID,
    NAME
FROM ANIMAL_INS 
WHERE INTAKE_CONDITION = "Sick";

12. 어린 동물 찾

https://school.programmers.co.kr/learn/courses/30/lessons/59037

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT 
	ANIMAL_ID,
    NAME 
FROM ANIMAL_INS 
WHERE INTAKE_CONDITION != "Aged";

13. 동물의 아이디와 이름

https://school.programmers.co.kr/learn/courses/30/lessons/59403

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT
	ANIMAL_ID,
    NAME
FROM ANIMAL_INS
ORDER BY ANIMAL_ID ASC;

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

https://school.programmers.co.kr/learn/courses/30/lessons/59404

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT 
	ANIMAl_ID,
    NAME,
    DATETIME 
FROM ANIMAL_INS 
ORDER BY 
	NAME,
    DATETIME DESC;

15. 상위 n개 레코드

https://school.programmers.co.kr/learn/courses/30/lessons/59405

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT NAME 
FROM ANIMAL_INS 
ORDER BY DATETIME LIMIT 1;

Key Point

LIMIT 1 구문

문법 : SELECT NAME FROM ANIMAL_INS ORDER BY DATETIME LIMIT 1

설명 : LIMIT 구문은 SQL 쿼리에서 반환되는 레코드의 수를 제한하는 데 사용됩니다. LIMIT 뒤에 오는 숫자는 데이터베이스가 반환해야 하는 최대 행의 수를 지정합니다. LIMIT 1은 특히 "단 하나의 레코드만 반환하라"는 의미를 가집니다. 이는 주로 큰 데이터 집합에서 몇 개의 샘플을 빠르게 가져오고 싶을 때, 또는 최소값, 최대값 같은 특정 데이터를 찾을 때 유용합니다.

예시 :

  • SELECT NAME FROM ANIMAL_INS ORDER BY DATETIME LIMIT 1
    • ANIMAL_INS 테이블에서 NAME 컬럼을 선택합니다.
    • 결과는 DATETIME 컬럼 기준으로 오름차순으로 정렬됩니다.
    • LIMIT 1로 인해 정렬된 결과의 맨 위에 있는 첫 번째 레코드만 반환됩니다.
  • 이 경우, LIMIT 1은 가장 오래된 DATETIME 값을 가진 ANIMAL_INS 테이블의 단 하나의 NAME을 반환하게 됩니다. 즉, 가장 먼저 데이터베이스에 입력된 동물의 이름을 가져옵니다.

16. 조건에 맞는 회원수 구하기

https://school.programmers.co.kr/learn/courses/30/lessons/131535

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT COUNT(USER_ID) AS USERS 
FROM USER_INFO 
WHERE 
	AGE BETWEEN 20 AND 29 AND
    year(JOINED) = "2021";

Key Point

BETWEEN AND 구

문법 : SELECT column_names FROM table_name WHERE column_name BETWEEN value1 AND value2;

  • column_name은 검사할 필드입니다.
  • value1은 범위의 시작 값을 나타냅니다.
  • value2는 범위의 끝 값을 나타냅니다.

설명 :  BETWEEN AND은 SQL에서 사용되는 조건 구문으로, 지정된 두 값 사이에 있는 데이터를 선택할 때 사용됩니다. 이 구문은 특히 범위 쿼리를 할 때 유용하며, 숫자, 텍스트, 날짜 등 다양한 데이터 유형에 적용할 수 있습니다.

  • 동작:
    • BETWEEN AND 구문은 column_name의 값이 value1과 value2 사이에 있을 때 참이 됩니다. 여기서 '사이'라는 의미는 value1과 value2를 포함한다는 것을 의미합니다.
    • 즉, value1 ≤ column_name ≤ value2를 만족하는 행만 선택됩니다.

예시 :

  • SELECT * FROM Orders WHERE OrderDate BETWEEN '2023-01-01' AND '2023-12-31'; 이 쿼리는 2023년 1월 1일부터 2023년 12월 31일까지의 모든 주문을 반환합니다.
  • SELECT * FROM Products WHERE Price BETWEEN 10 AND 20; 이 쿼리는 가격이 10에서 20 사이인 모든 제품을 반환합니다.