최상의 검색 결과로 내 쿼리에서 반환 된 결과 목록이 표시됩니다. 내가 할 수있는만큼 명확하게하려고 노력할 것이지만, 뭔가 명확하지 않은 것이 있으면 알려주세요. 나는 그것을 더 분명하게하려고 노력할 것입니다.가장 일치하는 SQL 쿼리를 주문하십시오
사용자가 이미 findsettings
이라는 설정 목록을 입력했습니다. 이 findsettings
으로 제품을 찾고 있습니다. 그가 최선의 경기를 분류해야 할 때까지이 모든 것이 잘 진행됩니다.
min_review, max_price, allows_pets, etc
과 같은 몇 가지 필드가 있습니다.
주문하고 싶습니다. 예를 들어 min_review of 40%
으로 제품을 주문한 다음 max_price = 10.00
으로 주문한 다음 allows_pets = 0
으로 주문해야합니다. OR
으로 그 작업을 수행 할 수 있지만 목록의 맨 아래에만 일치하는 조용한 결과가 표시되기를 원합니다. 따라서 기본적으로 가장 일치하는 제품이 나올 때까지 가장 먼저 일치하는 항목을 표시하고 두 번째 항목, 세 번째 항목 등을 표시해야합니다.
나는 이것을 어떻게 처리해야할지 모르겠다. 그래서 나는 그것을 소트하도록 도와 줄 수 있기를 바란다.
테이블 구조, 색인 및 쿼리 코드를 표시 할 수 있습니까? FULLTEXT 인덱스를 사용하고 MATCH AGAINST를 사용하려는 것처럼 들리지만 구조와 코드를 보지 않고 최상의 접근 방식을 말하기는 어렵습니다. – davidethell
원하는 순서로 여러 레코드가 포함 된 전체 예제를 포함하십시오. 예를 들어, "Min Review of 40 %"가 포함 된 검색의 경우 "41 %"의 검토 전후에 "99 %"의 검토가 있어야합니까? 나는 사실상 주문 기준과 검색 기준이 분리되어야한다고 제안 할 것이다 :'MinReview = 40 %, MinPrice = 10.00; 가격 ASC, 검토 DESC' * (다음 예제에서 MinPrice로 변경했습니다.) *. 정확히 일치하지 않는 레코드를 포함 할 경우 *** 정확히 *** 원하는 것은 무엇입니까? '39 %, 10.00' 전후에'40 %, 9.99'가 올 것인가? – MatBailie