안녕하세요~
MySQL에서 큐브리드 포팅하면서 궁금즘이 생겨서 질문드립니다.
SELECT 시, 필드 값의 대/소문자 구분 없이 검색하는 방법으로 아래와 같은 쿼리가 적당할까요?
예시 테이블 생성 및 샘플 데이터)
CREATE TABLE "entries"(
"uid" integer AUTO_INCREMENT,
"entry" VARCHAR(255) NOT NULL,
"meaning" VARCHAR(255) NOT NULL,
PRIMARY KEY("uid")
);
INSERT INTO "entries" ("entry", "meaning") values ('japan', '옻칠');
INSERT INTO "entries" ("entry", "meaning") values ('Japan', '일본');
질의1)
select * from "entries" where "entry" = 'japan';
/*
질의1의 결과) 아래 1건만 검색 됨
japan, 옻칠
*/
질의2) 대소문자 관계 없이 검색하기 위해 사용해 본 쿼리
select * from "entries" where lcase("entry") = lcase('japan');
질의2와 같이 필드 값과 입력 값을 모두 소문자로 맞춰 검색하면 2개의 japan 레코드가 나옵니다만...
이것이 성능상으로 문제가 있지 않을까 싶어서, 문의드립니다.
성능 저하가 우려가 있다면, 혹시 다른 방법이 있을까요?