Я пытаюсь использовать следующий запрос MySql, однако он возвращает синтаксическую ошибку в 'WHERE FIND_IN_SET (' query ', Alternate_name)' в строке 3. Я пытался найти его в Google и просмотреть руководство MySql, однако я не могу найти, как это исправить.
Запрос:
SELECT name, 'Events' as source FROM feed_events WHERE name LIKE '".$query."%' UNION ALL
SELECT name, 'Venues' as source FROM feed_venues WHERE name LIKE '".$query."%' UNION ALL
SELECT name, 'Locations' as source FROM feed_locations WHERE name LIKE '".$query."%' OR WHERE FIND_IN_SET('".$query."', Alternate_name)
В операторе select, в котором возникла проблема, я пытаюсь выбрать названия городов, которые лучше всего соответствуют введенной пользователем строке ($ query). В первом столбце указано название города, а во втором - список альтернативных названий этого города через запятую. Find_in_set () должен искать элементы в этом столбце, чтобы найти лучшее соответствие. Есть ли способ исправить эту синтаксическую ошибку, или find_in_set () не идеальный выбор для того, что я пытаюсь сделать?