2010-12-05 25 views
5

मैंने डुप्लिकेट खोजने के लिए अन्य शब्दों की सूची के विरुद्ध word की तुलना करने के लिए इस अभिव्यक्ति /\b(word\w*)\b/i की कोशिश की। मैंने preg_math_all() का उपयोग किया और यह ठीक काम किया। मैं वही काम करना चाहता था लेकिन इस बार mysql डेटाबेस से प्राप्त शब्दों के खिलाफ जांच करें। यह मैंने लिखा हैMySQL चुनिंदा प्रश्नों में नियमित अभिव्यक्ति कैसे लिखें?

SELECT * FROM table WHERE word = /\b(word\w*)\b/i 

इसने काम नहीं किया।

उत्तर

7

आपकी क्वेरी दिखना चाहिए:

SELECT * FROM table WHERE column REGEXP '/\b(word\w*)\b/i' 
4

MySQL regex syntax PHP के से एक अलग है, तो आप प्रारंभ और अंत में सीमांकक जरूरत नहीं है।

SELECT * FROM table WHERE word REGEXP '\b(word\w*)\b' 

आप i ध्वज मामले असंवेदनशीलता के लिए उसी तरह PHP में के रूप में, MySQL में के रूप में उपयोग नहीं कर सकते हैं कि क्या regex केस संवेदी है या नहीं स्तंभ मिलान एक केस संवेदी एक या नहीं है पर निर्भर करता है।