#SQL 문을 연습하자 #Programmers
ORM을 사용해서 SQL문과 멀어졌는 데,
내가 사용하는 ORM 쿼리 문이 효율적인지 잘 알기 위해서
소소하게 연습하기로 했다
일단 알고 있는 문제 사이트는 Programmers 밖에 없어서 Programmers 문제들을 모두 풀어보는 것을 첫걸음으로!
코딩테스트 연습 - 이름에 el이 들어가는 동물 찾기
ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디
programmers.co.kr
SELECT ANIMAL_ID, NAME FROM ANIMAL_INS
WHERE UPPER(NAME)
LIKE '%EL%' AND ANIMAL_TYPE = 'Dog'
ORDER BY NAME;
MYSQL & ORACLE 모두 동일하다.
ORACLE REGEXP_LIKE 로도 할 수 있다.
그렇지만 간단한 LIKE에 비해 복잡한 정규식 매칭을 위한 함수인만큼 성능은 LIKE 가 더 빠르다.
REGEXP_LIKE is similar to the LIKE condition, except REGEXP_LIKE performs regular expression matching instead of the simple pattern matching performed by LIKE.
UPPER 대신 LOWER 을 써서 소문자 단어와 비교해도 되고, 만약 대소문자가 섞인 단어와 비교해야 하면 비교하는 문자도 UPPER 또는 LOWER를 사용하면 된다. LOWER('%eL%') 이런 식으로.
끝!
'개발 > 데이터베이스' 카테고리의 다른 글
[Oracle] 다른 스키마에 테이블 생성하기 (0) | 2022.08.01 |
---|---|
데이트 타임 칼럼에서 시간만 추출하기 + GROUB BY 피하기 (0) | 2022.04.09 |
CASE ~ WHEN ~ THEN ~ ELSE ~ END (0) | 2022.04.07 |
실행시간 (Execution time) vs 패치시간 (Fetch time) (0) | 2022.03.05 |
[MariaDB] 도커 컴포즈로 MariaDB 사용하기 (0) | 2022.03.05 |