Я новичок в Zend Framework 2 и ZendSearch Lucene. В моей таблице базы данных есть три столбца с целыми числами, первый для идентификатора. Во втором - значение публикации (от 1 до 3), в третьем - значение категории (от 1 до 5). Таблица выглядит так:
| id | опубликовать | категорию |
| 1 | 1 | 1 |
| 2 | 1 | 2 |
| 3 | 1 | 3 |
| 4 | 2 | 3 |
| 5 | 2 | 4 |
Я проверил это с помощью следующих запросов:
"publish: 1" Вернуть правильный идентификатор 1,2,3;
"publish: 2" Вернуть правильный идентификатор 4,5;
"publish: 3" Вернуть неверный идентификатор 1,2,3,4,5; Результат должен быть пустым.
"опубликовать: 1 И категория: 1" Вернуть правильный идентификатор 1;
"опубликовать: 1 И категория: 3" Вернуть правильный идентификатор 3;
"опубликовать: 1 И category: 4 "Вернуть правильный пустой результат;
" publish: 1 AND category: 5 "Вернуть неверные идентификаторы 1,2,3; Результат должен быть пустым.
Когда число не существует, результат не пустой, он содержит все строки. Есть ли вариант, что результат будет пустым, когда число не существует?
Кодировка по умолчанию - UTF-8: \ ZendSearch \ Lucene \ Search \ QueryParser :: setDefaultEncoding ('UTF-8'); \ ZendSearch \ Lucene \ Analysis \ Analyzer \ Analyzer :: setDefault (новый \ ZendSearch \ Lucene \ Analysis \ Analyzer \ Common \ Utf8Num \ CaseInsensitive ());
Идентификатор не проиндексирован, публикация и категория являются ключевыми словами.