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

MySQL में FIELD() फ़ंक्शन FIND_IN_SET() फ़ंक्शन से कैसे अलग है?


जैसा कि हम जानते हैं, दोनों फ़ंक्शन उनमें प्रदान किए गए आर्गुमेंट्स से एक स्ट्रिंग खोजने के लिए उपयोग किए जाते हैं लेकिन उनके बीच कुछ महत्वपूर्ण अंतर हैं:

FIND_IN_SET() −  फ़ंक्शन स्ट्रिंग सूची का उपयोग करता है जो स्वयं एक स्ट्रिंग है जिसमें सबस्ट्रिंग कॉमा से अलग होते हैं। जबकि, FIELD() फ़ंक्शन में विभिन्न स्ट्रिंग्स की सूची होती है जिनमें से यह खोजे जाने वाली स्ट्रिंग का इंडेक्स नंबर ढूंढता है, यदि मौजूद है।

FIND_IN_SET() −  फ़ंक्शन NULL लौटाता है यदि कोई भी आर्गुमेंट यानी खोज स्ट्रिंग या स्ट्रिंग सूची NULL है। इसके विपरीत, FIELD() फ़ंक्शन NULL नहीं लौटाता बल्कि 0 लौटाता है यदि खोज स्ट्रिंग NULL है।

उदाहरण

mysql> Select FIND_IN_SET(NULL,'Ram is a good boy') AS Result; 
+--------+ 
| Result | 
+--------+ 
| NULL   | 
+--------+ 
1 row in set (0.00 sec) 
mysql> SELECT FIND_IN_SET('RAM',NULL)AS RESULT; 
+--------+ 
| RESULT | 
+--------+ 
| NULL   | 
+--------+ 
1 row in set (0.00 sec) 
mysql> Select FIELD(NULL,'Ram','is','good','boy'); 
+-------------------------------------+ 
| FIELD(NULL,'Ram','is','good','boy') | 
+-------------------------------------+ 
|                                   0 | 
+-------------------------------------+ 
1 row in set (0.00 sec)

  1. - MySQL में किसी फ़ील्ड को विशिष्ट मान से अपडेट करें यदि वह NULL है

    यदि फ़ील्ड NULL है तो उसे अपडेट करने के लिए IS NULL प्रॉपर्टी का उपयोग UPDATE कमांड के साथ करें। आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable ( StudentScore int ); Query OK, 0 rows affected (0.47 sec) इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें: mysql> insert

  1. - MySQL में COALESCE() से NULL मान वाले कॉलम को छोड़कर पहला गैर-NULL मान चुनें

    MySQL में जब एक पंक्ति में कई कॉलम हों और उनमें से कुछ NULL हों, तो COALESCE() फ़ंक्शन का उपयोग करके **पहला गैर-NULL मान** चुन सकते हैं। यह वैकल्पिक/फॉलबैक कॉलम, डेटा सफाई, और डिफ़ॉल्ट मान प्रदान करने के लिए उपयोगी है। सिंटैक्स COALESCE(value1, value2, value3, ...) बाएं से दाएं मूल्यांकन करता है प

  1. - MySQL में यूज़र-डिफ़ाइन्ड वेरिएबल से एक कॉलम का मान दूसरे कॉलम से प्राप्त करें

    MySQL में यूज़र-डिफ़ाइन्ड वेरिएबल (@var) का उपयोग करके पिछली पंक्ति के मान के आधार पर वर्तमान पंक्ति के लिए चल योग (क्यूमुलेटिव सम) या अन्य व्युत्पन्न मान की गणना कर सकते हैं। टेबल बनाएं mysql> CREATE TABLE DemoTable1868 (Value INT); डेटा डालें mysql> INSERT INTO DemoTable1868 VALUES(10), (2