Как написать запрос для сопоставления по всем таблицам?

0

Я новичок в mysql, php и sphinx.

Я хочу вернуть имя таблиц, если в нем query text. У меня есть query text который может попадать в любую из этих категорий состояния или округа. Я отправляю query text через POSTMAN в API и пытаюсь распечатать результаты в ответ

но он возвращает 0 найденных совпадений

который носит. Поскольку текст запроса присутствует в одной из таблиц, которые я передаю. Например, текст запроса - это Алабама, присутствует в таблице состояний, но по-прежнему не говорит, что результатов не найдено.

PHP-код

$cl = new SphinxClient();
$cl->SetServer('127.0.0.1', 9312);
$cl->SetMatchMode(SPH_MATCH_EXTENDED);
$result = $cl->Query($query, 'detectkeyword');
print_r($result); 

Код Sphinx.conf

sql_query = \
Select UUID_SHORT() AS sphinxid, 'state' as keyword from region \
UNION ALL \
Select UUID_SHORT() AS sphinxid, 'county' as keyword from county;

sql_attr_uint = sphinxid
sql_field_string = keyword
Теги:
sphinx

1 ответ

0

Кажется, у вас нет отдельного поля, чтобы на самом деле "соответствовать",

Нужно что-то вроде...

Select UUID_SHORT() AS sphinxid, region_name as text, 'state' as keyword from region \

В противном случае ваш запрос соответствовал бы только ключевому слову "state".

Ещё вопросы

Сообщество Overcoder
Наверх
Меню