WHERE 절의 MySQL CONCAT() 함수를 사용한 효율적인 검색
한 가지 일반적인 데이터베이스 작업은 여러 열에서 데이터를 검색하는 것입니다. 그러나 이름과 성 필드를 별도로 사용하여 이름을 검색할 경우 불완전한 일치 항목을 캡처하는 등의 제한 사항이 있을 수 있습니다.
이를 극복하기 위해 MySQL CONCAT() 함수를 사용하여 열을 하나의 열로 결합할 수 있습니다. 검색용 단일 필드입니다. 이는 이름과 성을 모두 정확하게 일치시키는 보다 효율적인 검색 프로세스를 제공합니다.
WHERE 절에서 CONCAT() 사용
CONCAT()를 효과적으로 사용하려면 간단히 검색하려는 열을 연결합니다.
select * from table where concat_ws(' ',first_name,last_name) like '%search_term%';
이 쿼리는 first_name이 있는 모든 행을 반환합니다. , last_name 또는 조합이 search_term과 일치합니다.
예
first_name 및 last_name 열이 있는 테이블이 있고 "Larry Smith"를 검색한다고 가정해 보겠습니다. CONCAT()을 사용하면 쿼리는 다음과 같습니다.
select * from table where concat_ws(' ',first_name,last_name) like '%Larry Smith%';
이 쿼리는 원하는 것을 검색합니다. 더 효율적이고 정확한 검색 결과를 제공합니다.
최적화
최적의 성능을 위해서는 CONCAT() 문을 WHERE의 마지막 세그먼트로 포함하는 것이 좋습니다. 조항, 기타 관련 필드를 검색한 후. 이 접근 방식은 검색 쿼리의 중간이나 시작 부분에 함수를 배치하는 것보다 더 효과적인 것으로 입증되었습니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3