MySQL में LIKE से प्रतिशत चिह्न (%) वाले रिकॉर्ड खोजना
चूँकि % LIKE में वाइल्डकार्ड है, इसे खोजने के लिए इसे एस्केप करना पड़ता है।
टेबल बनाना और डेटा डालना
mysql> CREATE TABLE DemoTable742 (Value VARCHAR(100)); Query OK, 0 rows affected (2.91 sec)
mysql> INSERT INTO DemoTable742 VALUES('632535MIT');
Query OK, 1 row affected (0.23 sec)
mysql> INSERT INTO DemoTable742 VALUES('US%UK');
Query OK, 1 row affected (0.13 sec)
mysql> INSERT INTO DemoTable742 VALUES('56%78');
Query OK, 1 row affected (0.18 sec)
mysql> INSERT INTO DemoTable742 VALUES('%_1234');
Query OK, 1 row affected (0.09 sec)
सभी रिकॉर्ड देखना
mysql> SELECT * FROM DemoTable742;
+-----------+ | Value | +-----------+ | 632535MIT | | US%UK | | 56%78 | | %_1234 | +-----------+ 4 rows in set (0.00 sec)
% वर्ण खोजने का क्वेरी
बैकलैश \ से एस्केप करें:
mysql> SELECT * FROM DemoTable742 WHERE Value LIKE '%\%%';
परिणाम
+--------+ | Value | +--------+ | US%UK | | 56%78 | | %_1234 | +--------+ 3 rows in set (0.00 sec)
व्याख्या: पैटर्न '%\%%' का अर्थ है: कोई भी वर्ण (%), फिर शाब्दिक % (एस्केप किया हुआ \%), फिर कोई भी वर्ण (%)। पहला रिकॉर्ड 632535MIT में % नहीं है, इसलिए यह बाहर है।