MySQL में TRIM() और COALESCE() से व्हाइटस्पेस वाले रिकॉर्ड खोजना
कॉलम में केवल व्हाइटस्पेस (या खाली) वाले रिकॉर्ड खोजने के लिए TRIM() और COALESCE() का उपयोग करें।
टेबल बनाना और डेटा डालना
mysql> CREATE TABLE DemoTable826 (
FirstName VARCHAR(100),
Age INT
);
Query OK, 0 rows affected (0.60 sec)
mysql> INSERT INTO DemoTable826 VALUES(' ', 24);
Query OK, 1 row affected (0.08 sec)
mysql> INSERT INTO DemoTable826 VALUES(' ', 22);
Query OK, 1 row affected (0.15 sec)
mysql> INSERT INTO DemoTable826 VALUES('Chris', 26);
Query OK, 1 row affected (0.12 sec)
mysql> INSERT INTO DemoTable826 VALUES('Robert', 27);
Query OK, 1 row affected (0.07 sec)
सभी रिकॉर्ड देखना
mysql> SELECT * FROM DemoTable826;
+-----------+------+ | FirstName | Age | +-----------+------+ | Adam | 21 | | | 24 | | | 22 | | Chris | 26 | | Robert | 27 | +-----------+------+ 5 rows in set (0.00 sec)
व्हाइटस्पेस वाले रिकॉर्ड खोजने का क्वेरी
mysql> SELECT * FROM DemoTable826 WHERE COALESCE(TRIM(FirstName), '') = '';
परिणाम
+-----------+------+ | FirstName | Age | +-----------+------+ | | 24 | | | 22 | +-----------+------+ 2 rows in set (0.00 sec)
व्याख्या:
TRIM(FirstName)— अग्रणी और अनुगामी व्हाइटस्पेस हटाता है।COALESCE(..., '')— यदिTRIMपरिणाम NULL है (मूल मान NULL था), तो खाली स्ट्रिंग देता है।= ''— जाँचता है कि परिणाम खाली स्ट्रिंग है।
यह क्वेरी NULL, खाली स्ट्रिंग, और केवल व्हाइटस्पेस वाले सभी मान पकड़ लेता है।