SQL

[MySQL] SELECT 데이터 추출하기2

너굴위 2024. 3. 25. 22:27
728x90
반응형

1. 잡은 물고기 중 가장 큰 물고기의 길이 구하기

코딩테스트 연습 - 잡은 물고기 중 가장 큰 물고기의 길이 구하기 | 프로그래머스 스쿨 (programmers.co.kr)

 

프로그래머스

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

programmers.co.kr

 

 

Logic

1)  최대값 찾기

MAX(컬럼명)

ex) 잡은 물고기 길이 중 최대값 찾기

SELECT MAX(LENGTH) FROM FISH_INFO;

 

 

2)  결과에 "cm"문자 연결

CONCAT(컬럼명, "cm")

ex) 잡은 물고기 길이에 cm 붙이기

SELECT CONCAT(LENGTH, "cm") FROM FISH_INFO;

 

 

결과

SELECT CONCAT(MAX(LENGTH) , "cm") AS MAX_LENGTH FROM FISH_INFO;

2. 동물의 아이디와 이름

코딩테스트 연습 - 동물의 아이디와 이름 | 프로그래머스 스쿨 (programmers.co.kr)

 

프로그래머스

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

programmers.co.kr

 

 

Logic

1)  순서 정렬하기

ORDER BY ASC(오름차순) / DESC(내림차순)

 

결과

SELECT ANIMAL_ID, NAME FROM ANIMAL_INS ORDER BY ANIMAL_ID ASC;

3.  가장 최근에 들어온 동물의 보호시작일 구하기

코딩테스트 연습 - 최댓값 구하기 | 프로그래머스 스쿨 (programmers.co.kr)

 

프로그래머스

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

programmers.co.kr

 

TIP. 첫번째, 즉 하나의 레코드만 추출하기 위해 limit을 사용할 수 있다.

1. 오름차순 / 내림차순 정렬

2. 가장 최근 내용 혹은 가장 나중 내용을 확인하고 싶을 때 limit 숫자; 를 통해 레코드의 개수대로 출력할 수 있다.

 

 

결과

SELECT DATETIME FROM ANIMAL_INS ORDER BY DATETIME DESC limit 1;

4.  강원도에 위치한 생산공장 목록 출력하기

코딩테스트 연습 - 강원도에 위치한 생산공장 목록 출력하기 | 프로그래머스 스쿨 (programmers.co.kr)

 

프로그래머스

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

programmers.co.kr

 

 

TIP. 문자열을 조건으로 걸 때 LIKE를 사용하여 비교할 수 있다.

LIKE "문자열"

+) 문자열 앞 뒤에 %를 붙이면 문자열이 모두 같지 않더라도 해당 문자열이 포함되어있는 레코드가 출력된다.

 

 

결과

SELECT FACTORY_ID, FACTORY_NAME, ADDRESS FROM FOOD_FACTORY WHERE ADDRESS LIKE "강원도%" ORDER BY FACTORY_ID ASC;

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

코딩테스트 연습 - 조건에 맞는 회원수 구하기 | 프로그래머스 스쿨 (programmers.co.kr)

 

프로그래머스

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

programmers.co.kr

 

 

TIP. WHERE뒤에 다수의 조건이 붙을 때

WHERE 조건1 AND 조건2 AND 조건3 ...;

+) AND로 연결해서 사용할 수 있다.

 

결과

SELECT COUNT(AGE) FROM USER_INFO WHERE JOINED LIKE "2021-%" AND 20 <= AGE AND AGE <= 29;
728x90
반응형