Форумы портала PHP.SU » PHP » SQL и Архитектура БД » Формирование sql запроса

Страниц (1): [1]
 

1. 000000000 - 18 Февраля, 2017 - 14:02:42 - перейти к сообщению
Пожалуйста, подскажите почему не срабатывает запрос:
($link - соединение с бд)

mysql_query("CREATE FULLTEXT INDEX index_col5 ON table_csv (col5(5))",$link);
$result = mysql_query("SELECT id FROM table_csv WHERE MATCH (col5) AGAINST ('EUR')",$link);
//$result = mysql_query("SELECT id FROM table_csv WHERE col5 LIKE '%EUR%'",$link);
$row = mysql_fetch_array($result);
echo 'id', $row["id"];

при использовании LIKE - id выводится
при использовании структуры MATCH AGAINST - нет
2. RomAndry - 18 Февраля, 2017 - 14:08:15 - перейти к сообщению
Попробуйте так:
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT id FROM table_csv WHERE MATCH (col5) AGAINST ('*EUR*')
3. Мелкий - 18 Февраля, 2017 - 14:56:34 - перейти к сообщению
Проверьте ft_min_word_len и innodb_ft_min_token_size.
EUR - слово короткое, может с вашими настройками оно слишком короткое для попадания в индекс.

 

Powered by ExBB FM 1.0 RC1