Keyword와 함께 StartSwith에서 ASP.NET 데이터베이스 검색을 수행합니다

StackOverflow https://stackoverflow.com/questions/959480

  •  12-09-2019
  •  | 
  •  

문제

쿼리가 있습니다. 검색 엔진이있는 사이트를 개발 중입니다. 검색 엔진이 주요 기능입니다. 비즈니스 디렉토리 사이트입니다.

현재 "Like"키워드를 사용하여 데이터베이스를 검색하는 기본 검색 SQL이 있습니다.

내 클라이언트는 "startswith"키워드의 줄을 따라 무언가를 따르는 "같은"키워드를 사용하는 대신 검색 기능을 변경하도록 요청했습니다.

여기서 이러한 요구를 명확히하는 것이 예입니다. 누군가 텍스트 상자에 배관공에 대해 "plu"를 입력하면 현재 반환됩니다.

  1. 센터 주 배관 및 지붕
  2. 배관 무제한

클라이언트는 "PLU"로 시작하기 때문에 "배관 무제한"을 반환하고 "plu"를 "포함하지"않기 때문에 "Plu"

나는 이것이 이상하고 어리석은 요청이라는 것을 알고 있지만, 누구나이 목표를 달성하는 방법에 대한 올바른 방향으로 나를 지적 할 수있는 예제 SQL 코드가 있습니까?

도움을 주셔서 감사합니다. 감사합니다 ...

도움이 되었습니까?

해결책

대신에:

select * from professions where name like '%plu%'

, 주요 %없이 WHERE 절을 사용하십시오.

select * from professions where name like 'plu%'

다른 팁

이건 어때:SELECT * FROM MyTable WHERE MyColumn LIKE 'PLU%'


% 부호는 문자열의 오른쪽에만 있습니다.
MS SQL의 예

LIKE 정말 효과적인 검색에 필요한 성능을 제공하지 않습니다. 같은 것을 조사합니다 Lucence 또는 엔진의 전체 텍스트 검색에 해당합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top