Я пытаюсь сделать функцию, похожую на страницу поиска. Я хочу сделать запрос для поиска «запроса» в «ColumnA» и «ColumnB» и «ColumnC» и «ColumnD». И выберите строки, в которых есть слово/фраза «запрос» в любом из этих столбцов. Это, кажется, работает:MySQL: Ищите ту же строку в нескольких столбцах
SELECT * FROM projects
WHERE
category LIKE '%query%' OR
name LIKE '%query%' OR
description LIKE '%query%'OR
keywords LIKE '%query%' OR
'type' LIKE '%query%'
ORDER BY name ASC
Но это длительный. Есть ли более простой или эффективный способ сделать это?
лучшим вариантом является создание отношения многие ко многим с искомыми словами llnkt к вашим проектам таблицы таким образом, вы можете избежать использования типа «%%» (требуется полное сканирование индекса или полное сканирование таблицы) или использование индекса FULL TEXT. –