Na podstawie odpowiedzi w przesłanym linku możesz zrobić coś takiego
SELECT id,SUM(relevance) as total_relevance FROM (
SELECT
id,
(MATCH(title) AGAINST ('search string')) AS relevance
FROM Cards
UNION
SELECT
Cards.id,
(MATCH(brigade) AGAINST ('search string')) AS relevance
FROM Brigades
INNER JOIN CardBrigades ON Brigades.id=brigade_id
INNER JOIN Cards ON card_id=Cards.id
UNION
SELECT
Cards.id,
(MATCH(identifier) AGAINST ('search string')) AS relevance
FROM Identifier
INNER JOIN CardIdentifier ON Identifier.id=identifier_id
INNER JOIN Cards on card_id=Cards.id
) AS combined_search
GROUP BY id
HAVING total_relevance > 0
Nie jestem pewien, jak dobrze by to działało. Być może lepiej będzie przyjrzeć się innym rozwiązaniom, takim jak Solr, Lucene lub nawet silnik pamięci masowej NoSQL.