ऐसा लगता है कि आपको अपनी शामिल होने की स्थिति में एक FULLTEXT मिलान अभिव्यक्ति का उपयोग करने की आवश्यकता है।
मैंने शामिल होने की स्थिति में कभी भी फ़ुलटेक्स्ट मैच का उपयोग नहीं किया है, इसलिए मुझे यकीन नहीं है कि यह काम करेगा, लेकिन काल्पनिक रूप से यह ऐसा कर सकता है:
SELECT DISTINCT c.*
FROM corpuses c JOIN searches s
ON (MATCH(c.title, c.body) AGAINST (s.term));
ठीक है, मैंने आपकी तालिका परिभाषाओं और MySQL मैनुअल से कुछ नमूना डेटा का उपयोग करके इसे आजमाया है। यहां एक क्वेरी है जो काम करती है (MySQL 5.1.30 के साथ परीक्षण किया गया):
SELECT *
FROM corpuses
WHERE MATCH(title, body)
AGAINST ( (SELECT GROUP_CONCAT(term SEPARATOR ' ') FROM searches)
IN BOOLEAN MODE);