मैच के लिए मैं निम्न मान से युक्त एक मेज है:MySql regexp दो अल्पविराम से अलग तार
id | value |
-----------------------
1 | 1,2,5,8,12,20 |
2 | 11,25,26,28 |
-----------------------
अब मैं कुछ अल्पविराम आईडी जैसे अलग खोज करना चाहते हैं उपरोक्त मूल्य कॉलम से '1,3,6,7,11' उदा।
SELECT id FROM tbl_name
WHERE value REGEXP '*some reg exp goes here containing 1,3,6,7,11*'
LIMIT 1,0;
SELECT id FROM tbl_name
WHERE value REGEXP '*some reg exp goes here containing 3,6,27,15*'
LIMIT 1,0;
1 क्वेरी ऊपर
1 लौटना चाहिए, जबकि 2 लौटना चाहिए शून्य
मैं नियमित अभिव्यक्ति किसी को भी मदद कर सकते हैं के साथ नया हूँ। धन्यवाद
बस सुनिश्चित करें कि मैं समझता हूँ, यह 'लौटना चाहिए 1' क्योंकि संख्या के कम से कम एक है कि आईडी के साथ पंक्ति पर से मेल खाता बनाने के लिए? –
बस एक साइड नोट के रूप में, इस डेटा प्रारूप का उपयोग करके किसी क्वेरी से अच्छे प्रदर्शन की अपेक्षा न करें, यह किसी भी प्रकार के इंडेक्स का उपयोग करने में सक्षम नहीं होगा, और क्वेरी का जवाब देने के लिए हमेशा पूरी तालिका को पढ़ने की आवश्यकता होगी। दूसरे शब्दों में, डेटा की कुछ सौ पंक्तियों से अधिक होने पर वेब पेज को वास्तविक समय देने के लिए कोई अच्छा नहीं है। –
कोई भी उस पंक्ति का आईडी नहीं होना चाहिए, और हां यह वापस लौटाया गया है यदि कम से कम संख्या में मेल खाते हैं। – prashant