코딩테스트/SQL 코딩테스트
<프로그래머스> 이름에 el이 들어가는 동물 찾기
배또가또
2023. 12. 12. 20:30
출처 : https://school.programmers.co.kr/learn/courses/30/lessons/59047
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
- 문제요구사항
- 이름에 "EL"이 들어가는 개의 아이디와 이름을 조회
- 이름의 결과는 이름 순으로 조회하되 대소문자 구별을 하지 않음
LIKE 구문을 사용해서 결과를 얻을 수 있다.
--특정문자로 시작하는 문자를 찾기--
SELECT 컬럼명 FROM 테이블 WHERE 컬럼명 LIKE 'A%'
--특정문자로 끝나는 문자 찾기--
SELECT 컬럼명 FROM 테이블 WHERE 컬럼명 LIKE '%A'
--특정문자를 포함하는 문자 찾기--
SELECT 컬럼명 FROM 테이블 WHERE 컬럼명 LIKE '%A%'
--특정문자로 시작하는 두글자 문자 찾기--
SELECT 컬럼명 FROM 테이블 WHERE 컬럼명 LIKE 'A_'
1) Oracle
SELECT ANIMAL_ID, NAME
FROM ANIMAL_INS
WHERE LOWER(NAME) LIKE '%el%' AND
ANIMAL_TYPE = 'Dog'
ORDER BY NAME;
Oracle은 대소문자를 구분하기 때문에 조건을 부여할 때 NAME 전체를 LOWER()를 이용해서 소문자로 바꾼 다음
LIKE '%el%' 로 소문자와 비교하여 원하는 데이터를 조회하였다.
2) MySQL
SELECT ANIMAL_ID, NAME
FROM ANIMAL_INS
WHERE NAME LIKE '%el%' AND ANIMAL_TYPE = 'Dog'
ORDER BY NAME
MySQL은 Oracle과 달리 대소문자를 애초에 구분하지 않고 검색하여 에러가 나지 않는다.
- References