हम जानते हैं कि CONCAT() फंक्शन NULL वापस करता है यदि कोई भी आर्गुमेंट NULL है लेकिन CONCAT_WS() फंक्शन केवल तभी NULL वापस करता है जब पहला आर्गुमेंट यानी सेपरेटर NULL हो और यह किसी अन्य NULL को अनदेखा करता है। हम कह सकते हैं कि यह CONCAT_WS() फंक्शन का CONCAT() फंक्शन पर लाभ है जब हम कॉलम से मानों को जोड़ना चाहते हैं और किसी कॉलम में NULL मान है। इसे समझने के लिए, हम 'Student_name' टेबल के उदाहरण पर विचार करते हैं जिसमें निम्न डेटा है:
mysql> Select * from Student_Name; +---------+-------+---------+ | FName | Mname | Lname | +---------+-------+---------+ | Rahul | NULL | Singh | | Gaurav | Kumar | NULL | | Harshit | NULL | Khurana | | Yash | Pal | Sharma | +---------+-------+---------+ 4 rows in set (0.00 sec)
अब, मान लीजिए यदि हम Fname, Mname और Lname कॉलम के मानों को जोड़ना चाहते हैं तो निम्न आउटपुट होगा:
mysql> Select CONCAT(Fname,Mname,Lname)AS Name from Student_Name; +---------------+ | Name | +---------------+ | NULL | | NULL | | NULL | | YashPalSharma | +---------------+ 4 rows in set (0.00 sec)
लेकिन, यदि हम CONCAT_WS() फंक्शन का उपयोग करेंगे तो यह निम्न क्वेरी में दिखाए अनुसार NULL को अनदेखा करेगा:
mysql> Select CONCAT_WS(' ',Fname,Mname,Lname)AS Name from student_name;
+-----------------+
| Name |
+-----------------+
| Rahul Singh |
| Gaurav Kumar |
| Harshit Khurana |
| Yash Pal Sharma |
+-----------------+
4 rows in set (0.00 sec)