Как искать сингулярные / множественные числа в php mysql

Когда я вхожу в слово (например: freshers), я хочу, чтобы свежее и свежее записывалось, и в настоящее время я получаю только свежие рекорды. Мой код выглядит так:

$search='freshers'; $qry=mysql_query("select count(*) from jobs where job_title like '%$search%' or MATCH(job_title) AGAINST('$search' IN BOOLEAN MODE)"); 

когда слово поиска является свежим, я получаю счет как 1200. Когда поисковое слово свежее, я снова получаю счет как 2000.

Как получить почти то же самое количество, когда я вхожу либо в freshers, либо в более свежий.

Вы не можете получить точно такой же счетчик совпадений с любой технологией MySQL с поисковым термином, который является единственным или множественным.

У MySQL нет умений, чтобы знать, что freshers – это множественное число fresher freshers или children – это множественное число child . Если вы хотите сделать это с помощью MySQL, вам нужно будет начать поиск с единственной формы слова, для которого вы хотите множественное число.

Также MySQL не знает, что mice являются множественным числом mouse .

Если вам нужна автоматическая множественная / исключительная функциональность, вы можете исследовать Lucene или другие технологии поиска естественного языка. Название способности, которую вы ищете, «происходит».

Но вы можете использовать поиск FULLTEXT с терминами с завершающими звездочками. Например, 'fresher*' соответствует fresher , freshers и даже fresherola . Это расширит поиск от единственного числа до множественного числа. Это не будет работать наоборот. Это

 select count(*) from jobs where MATCH(job_title) AGAINST('fresher*' IN BOOLEAN MODE) 

Существуют некоторые другие модифицирующие символы для условий поиска в булевом режиме. Они упоминаются здесь:

http://dev.mysql.com/doc/refman/5.5/en/fulltext-boolean.html

Pro tip: column LIKE '%searchterm%' , вероятно, самый медленный способ, которым MySQL предлагает искать столбец. Гарантируется сканирование всей таблицы.

Pro tip: поиск FULLTEXT по своей сути немного нечеткий. Ожидание четких записей из него, вероятно, является путаницей путаницы.

 try this $search='fresher'; $qry=mysql_query("select count(*) from jobs where job_title like '$search%'