IT/Database
instr(), like 차이 및 비교
성준하이
2024. 1. 29. 07:56
반응형
database 에서 컬럼 내 특정 문자열을 찾기위해서 많은 방법이 있다.
대부분 like 를 사용하겠지만,
instr 이라는 함수와 함께 알아볼 것이다.
사용법은 둘다 간단하다.
컬럼 내에서 test라는 문구를 찾으려면
like 사용
SELECT * FROM TABLE WHERE COL LIKE '%test%';
instr 사용
SELECT * FROM TABLE WHERE INSTR(COL, 'test');
현재 쿼리에서는 둘 다 당연히 인덱스를 활용하지는 못한다.
하지만 like문에서는 'test%' 로 설정을 해서 test로 시작하는 ~~
을 구할수가 있다.
둘의 속도 비교 해보았고 결론은
like 'ABC%' 일때 : 앞에 %가 없을때는 like 사용
like '%ABC%' or '%ABC' 일때 : 앞에 %가 있을때는 instr() 사용
을 하면 된다.
반응형