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

गैर-शून्य मानों को बदलने के लिए MySQL फ़ंक्शन

दुर्भाग्य से आपके व्यवहार के लिए कोई फ़ंक्शन नहीं है, लेकिन यदि आपके पास इसके लिए अनुमतियां हैं, तो अपना स्वयं का फ़ंक्शन बनाना आसान है, अन्यथा आप IF THEN ELSE जोड़ सकते हैं आपकी क्वेरी के लिए जैसा कि आप पहले ही दिखा चुके हैं लेकिन यह आपके प्रश्न का कोई उत्तर नहीं होगा। यदि आप कोई फ़ंक्शन बनाना चाहते हैं तो आपको समस्या होगी कि आपको स्पष्ट पैरामीटर प्रकारों की आवश्यकता है और MySQL के साथ यह दुर्भाग्य से फ़ंक्शन को अधिभारित करने के लिए भी कार्यात्मक नहीं है (समान फ़ंक्शन नाम लेकिन विभिन्न पैरामीटर प्रकार)। तो आपको अलग-अलग फ़ंक्शन नामों के साथ विभिन्न प्रकार के विभिन्न कार्यों की आवश्यकता है। यह ऐसा दिखेगा:

    CREATE FUNCTION `fmap_varchar`(e1 VARCHAR(255), e2 VARCHAR(255) )
    RETURNS VARCHAR(255) DETERMINISTIC
    RETURN IF(e1 IS NULL, NULL, e2);

आपको शायद सही चारसेट का भी ध्यान रखना होगा जिसे आप रिटर्न क्लॉज में भी निर्दिष्ट कर सकते हैं।

और एक प्रश्न के साथ समाधान जो आपने पहले ही दे दिया है:

    SELECT IF(something IS NULL, NULL, anotherthing) FROM your_table;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्या मुझे अजगर MySQLdb मॉड्यूल में कर्सर का पुन:उपयोग करना चाहिए

  2. Mysql Group 24 घंटे के अंतराल तक

  3. SQL:प्रत्येक धावक के लिए रनों के बीच दिनों की औसत संख्या ढूँढना

  4. मैं MySQL में एक प्रिंट स्टेटमेंट का अनुकरण कैसे कर सकता हूं?

  5. सक्रिय रिकॉर्ड का उपयोग करके वाईआई में डेटाबेस दृश्य को कॉल करना