바로 키워드에 대한 MYSQL 데이터베이스를 검색하고 두 개 쿼리를 사용하여 a) Together 또는 b)를 구분합니다. 이제는 '순위'라는 새 열을 추가하여 순위를 매겼습니다. 'ORDER BY rank'를 각 쿼리에 추가하고 단일 용어를 입력하면 결과가 올바르게 표시되지만 두 개 이상의 용어를 입력하면이 오류가 발생합니다. MySQL 쿼리 오류 : SQL 구문에 오류가 있습니다. ; 오른쪽 구문이 1 행에서 'ORDER BY rank'근처에서 사용하도록 MySQL 서버 버전에 해당하는 매뉴얼을 확인하십시오. 결과는 자동으로 id에 의해 순위가 결정됩니다. 단 하나의 쿼리에서 ORDER BY 태그를 제거하면 다른 쿼리의 태그가 작동하지 않습니다. 나는 그것을 얻지 못 하느냐? 내 검색어는 아래와 같습니다.이 용어 쿼리에 ORDER BY를 사용합니다.
// Terms Together
$query = " SELECT * FROM scan WHERE ";
$terms = array_map('mysql_real_escape_string', $terms);
$i = 0;
foreach ($terms as $each) {
if ($i++ !== 0){
$query .= " AND ";
}
$query .= "keywords LIKE '%{$each}%' ORDER BY rank";
}
/* Query Statement Building - Terms Separate */
$query = " SELECT * FROM scan WHERE ";
$terms = array_map('mysql_real_escape_string', $terms);
$i = 0;
foreach ($terms as $each) {
if ($i++ !== 0){
$query .= " OR ";
}
$query .= "keywords LIKE '%{$each}%' ORDER BY rank";
}
감사합니다. 나는 매우 기쁘게 생각합니다 –