mysql - query on FIND_IN_SET -


निम्न क्वेरी

  PROJECT_ISSUES से चयन ASSOCIATED_RISK कहां FIND_IN_SET ( '98', ASSOCIATED_RISK) ;  

  96,98 90,98  

के रूप में आउटपुट देता है, लेकिन अगर मैं

< पूर्व> SELECT ASSOCIATED_RISK से PROJECT_ISSUES जहां FIND_IN_SET ('96, 98 ', ASSOCIATED_RISK);

यह कुछ भी रिटर्न नहीं देता है। इस मामले में मैं पहली पंक्ति को पुनः प्राप्त करना चाहूंगा।

  96,98  

आपकी टिप्पणी:

क्या मैं इसे एकल में प्राप्त कर सकता हूं बजाय कई find_in_set तैयार करने की क्वेरी और उन्हें concat

कोई वैकल्पिक समाधान के रूप में, आप उपयोग कर सकते हैं पता लगाने आपके पर ASSOCIATED_RISK < / कोड> मान

उदाहरण :

  ढूंढें (प्रतिस्थापित करें ('96, 98 ',', ',' ') , (, ASSOCIATED_RISK ',' ',') की जगह)  

संपादित करें :
के अनुसार अजीज शेख टिप्पणी, हम देख सकते हैं कि सही परिणाम की संभावना है हालांकि खोज स्ट्रिंग लक्ष्य स्ट्रिंग में मौजूद नहीं है।

एक वैकल्पिक समाधान के रूप में, आप खोज स्ट्रिंग को लक्ष्य स्ट्रिंग से प्रतिस्थापित कर सकते हैं एक खाली स्ट्रिंग और लंबाई की तुलना करें। यदि मूल स्ट्रिंग की लंबाई नई प्रतिस्थापित स्ट्रिंग की तुलना में अधिक होती है, तो यह एक सच्चा परिणाम है।

उदाहरण : < / P>

  - यह एक सच्चा लंबाई (ASSOCIATED_RISK) & gt; के लिए 0 से अधिक होना चाहिए। लंबाई (प्रतिस्थापन (ASSOCIATED_RISK, '96, 98 ',' '))  

Comments