Jednoduché řešení:
SELECT *
FROM projects
WHERE
CONCAT(category,name,description,keywords,type) LIKE '%query%'
ORDER BY name ASC;
V případě potřeby můžete mezi sloupce přidat oddělovače:
SELECT *
FROM projects
WHERE
CONCAT(category,"|",name,"|",description,"|",keywords,"|",type) LIKE '%query%'
ORDER BY name ASC;
Můžete také použít fulltextové vyhledávání (je třeba vytvořit fulltextový index, jak je popsáno zde:Jak fungují FULLTEXTOVÉ INDEXY ve více sloupcích? )
SELECT *, MATCH (category,name,description,keywords,type) AGAINST ('query') AS score FROM projects WHERE MATCH (category,name,description,keywords,type) AGAINST ('query');