MATCH()
. के अंदर नामित कॉलम FULLTEXT इंडेक्स के लिए पहले से परिभाषित समान कॉलम होना चाहिए। यानी, कॉलम का सेट आपकी अनुक्रमणिका में वैसा ही होना चाहिए जैसा कि MATCH()
पर आपके कॉल में होता है ।
तो दो कॉलम खोजने के लिए, आपको एक ही क्रम में एक ही दो कॉलम पर FULLTEXT इंडेक्स को परिभाषित करना होगा।
निम्नलिखित ठीक है:
ALTER TABLE tabl1 ADD FULLTEXT INDEX (column1, column2);
SELECT ID FROM table1 WHERE MATCH(column1, column2) AGAINST ('text')
निम्नलिखित गलत है क्योंकि MATCH() दो स्तंभों का संदर्भ देता है लेकिन अनुक्रमणिका केवल एक स्तंभ के लिए परिभाषित है।
ALTER TABLE tabl1 ADD FULLTEXT INDEX (column1);
SELECT ID FROM table1 WHERE MATCH(column1, column2) AGAINST ('text')
निम्नलिखित गलत है क्योंकि MATCH () दो स्तंभों को संदर्भित करता है लेकिन सूचकांक तीन स्तंभों के लिए परिभाषित किया गया है।
ALTER TABLE tabl1 ADD FULLTEXT INDEX (column1, column2, column3);
SELECT ID FROM table1 WHERE MATCH(column1, column2) AGAINST ('text')
निम्नलिखित गलत है क्योंकि MATCH() दो स्तंभों का संदर्भ देता है लेकिन प्रत्येक अनुक्रमणिका एक स्तंभ के लिए परिभाषित है।
ALTER TABLE tabl1 ADD FULLTEXT INDEX (column1);
ALTER TABLE tabl1 ADD FULLTEXT INDEX (column2);
SELECT ID FROM table1 WHERE MATCH(column1, column2) AGAINST ('text')
निम्नलिखित गलत है क्योंकि MATCH() दो स्तंभों को संदर्भित करता है लेकिन गलत क्रम में:
ALTER TABLE tabl1 ADD FULLTEXT INDEX (column1, column2);
SELECT ID FROM table1 WHERE MATCH(column2, column1) AGAINST ('text')
संक्षेप में, MATCH () के उपयोग को ठीक उसी क्रम में, उसी क्रम में, एक पूर्ण टेक्स्ट इंडेक्स परिभाषा के रूप में संदर्भित करना चाहिए।