Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में मानों की सूची से पहला गैर-NULL मान कैसे प्राप्त करें (COALESCE फंक्शन)

COALESCE(value1, value2, ..., valueN) फंक्शन तर्कों में पहला गैर-NULL मान लौटाता है।

सिंटैक्स

COALESCE(value1, value2, ..., valueN)
  • एक या अधिक तर्क स्वीकार करता है
  • बाएं से दाएं जांचता है
  • पहला गैर-NULL मिलने पर तुरंत लौटाता है (शॉर्ट-सर्किट)
  • सभी NULL होने पर NULL लौटाता है

उदाहरण

mysql> SELECT COALESCE(NULL, NULL, NULL, 'Ram', 'Aarav', NULL);
+--------------------------------------------------+
| COALESCE(NULL, NULL, NULL, 'Ram', 'Aarav', NULL) |
+--------------------------------------------------+
| Ram                                              |
+--------------------------------------------------+

उपयोग के मामले

  • डिफ़ॉल्ट मान प्रदान करना: COALESCE(optional_col, 'default')
  • NULL को सार्थक मान से बदलना: COALESCE(phone, email, 'N/A')
  • कई वैकल्पिक कॉलम्स में से पहला भरा हुआ चुनना
नोट: COALESCE SQL मानक है (Oracle, PostgreSQL, SQL Server, SQLite में भी काम करता है)। MySQL-विशिष्ट IFNULL() केवल दो तर्क लेता है।
  1. - MySQL में COALESCE() से पहला नॉन-NULL मान कैसे प्रदर्शित करें?

    MySQL में COALESCE() फंक्शन आर्गुमेंट सूची में पहला नॉन-NULL मान लौटाता है। यह NULL मानों को डिफ़ॉल्ट/फॉलबैक मान से बदलने, या एकाधिक कॉलम में से पहला उपलब्ध मान चुनने के लिए अत्यंत उपयोगी है। सिंटैक्स COALESCE(value1, value2, ..., valueN) पहला नॉन-NULL मान लौटाता है; सभी NULL हों तो NULL लौटाता है।

  1. - MySQL में VARCHAR कॉलम से अधिकतम मान कैसे प्राप्त करें

    समस्या VARCHAR कॉलम पर MAX() सीधे काम नहीं करता क्योंकि स्ट्रिंग तुलना वर्णानुक्रम में होती है। समाधान CAST() का उपयोग करके VARCHAR को UNSIGNED INTEGER में बदलें फिर MAX() लागू करें। उदाहरण INSERT INTO DemoTable2030 VALUES (8), (1), (10001), (901); क्वेरी SELECT MAX(CAST(Value AS UNSIGNED)) FRO

  1. - दी गई सूची से वह संख्या खोजें जिसके लिए फ़ंक्शन का मान A के निकटतम हो C++ में

    मान लीजिए हमारे पास एक फ़ंक्शन F(n) है जैसे कि F(n) = P - (0.006*n), जहां P भी दिया गया है। पूर्णांकों की एक सूची और एक संख्या A दी गई है। कार्य सूची से वह संख्या खोजना है, जिसके लिए फ़ंक्शन का मान A के निकटतम है। तो यदि P = 12, और A = 5, तो सूची {1000, 2000} होगी। तो आउटपुट 1000 होगा। तो यदि P = 12