Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

MySQL में पैरामीटर के रूप में कॉलम नाम पास करना

जहां तक ​​​​एक कॉलम नाम को MySQL (शीर्षक में प्रश्न) में पैरामीटर के रूप में पास करना है, यह SQL कथन में संभव नहीं है। पहचानकर्ता SQL कथन में (उदा. तालिका नाम और स्तंभ नाम) SQL पाठ का भाग होना चाहिए। उन्हें बाइंड प्लेसहोल्डर के साथ पास नहीं किया जा सकता है।

IN तुलना ऑपरेटर माता-पिता में संलग्न मूल्यों की एक सूची, या माता-पिता में संलग्न एक चयन क्वेरी की अपेक्षा करता है जो मूल्यों का एक सेट देता है।

यह स्पष्ट नहीं है कि आप क्या करने का प्रयास कर रहे हैं।

मुझे संदेह है कि template_allowed_parent_templates तालिका में एक स्तंभ है, और इसमें अल्पविराम से अलग किए गए मानों की सूची है। (कंपकंपी।)

मुझे संदेह है कि आप MySQL FIND_IN_SET की तलाश कर रहे होंगे स्ट्रिंग फ़ंक्शन, जो किसी विशेष मान के लिए अल्पविराम से अलग की गई सूची को "खोज" करेगा।

एक साधारण प्रदर्शन के रूप में:

  SELECT FIND_IN_SET('5', '2,3,5,7')
       , FIND_IN_SET('4', '2,3,5,7')

निर्दिष्ट मान "पाया" होने पर फ़ंक्शन एक सकारात्मक पूर्णांक देता है। आप उस फ़ंक्शन का उपयोग विधेय में कर सकते हैं, उदा.

WHERE FIND_IN_SET(id,template_allowed_parent_templates)

या

WHERE FIND_IN_SET( ? ,template_allowed_parent_templates)

(यह काम करता है क्योंकि MySQL में एक सकारात्मक पूर्णांक का मूल्यांकन बूलियन संदर्भ में TRUE के रूप में किया जाता है।)

मैं केवल अनुमान लगा रहा हूं कि आप क्या हासिल करने की कोशिश कर रहे हैं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. php mysql में AJAX डेटा प्रतिक्रिया हमेशा 0

  2. भूले हुए MySQL रूट पासवर्ड को कैसे रीसेट करें?

  3. वर्डप्रेस ब्लॉग चलाने के लिए PHP-MySQL लगातार कनेक्शन का उपयोग करना

  4. यूटीएफ -8 में 3 से अधिक बाइट्स लेने वाले यूनिकोड वर्णों को कैसे फ़िल्टर (या प्रतिस्थापित) करें?

  5. अद्यतन डेटाबेस क्वेरी का उपयोग कर एसक्यूएल सिंटैक्स त्रुटि