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

MySQL में VARCHAR में प्रतिशत चिन्ह (%) कैसे खोजें?

MySQL में VARCHAR कॉलम में प्रतिशत चिन्ह (%) खोजने के लिए आप LIKE ऑपरेटर का उपयोग कर सकते हैं। चूंकि % एक वाइल्डकार्ड कैरेक्टर है, इसलिए इसे एस्केप करना आवश्यक है।

सिंटैक्स

SELECT * FROM yourTableName WHERE yourColumnName LIKE '%|%%' ESCAPE '|';

उदाहरण के साथ समझें

सबसे पहले एक टेबल बनाते हैं:

CREATE TABLE FindPercentInVarcharDemo (
    Id INT NOT NULL AUTO_INCREMENT,
    Words VARCHAR(30),
    PRIMARY KEY(Id)
);

अब % चिन्ह वाले कुछ रिकॉर्ड डालते हैं:

INSERT INTO FindPercentInVarcharDemo(Words) VALUES('This is a My%SQL Program');
INSERT INTO FindPercentInVarcharDemo(Words) VALUES('Java is an object oriented');
INSERT INTO FindPercentInVarcharDemo(Words) VALUES('C# is also an object%oriented');

सभी रिकॉर्ड देखें:

SELECT * FROM FindPercentInVarcharDemo;

आउटपुट:

+----+-------------------------------+
| Id | Words                         |
+----+-------------------------------+
| 1  | This is a My%SQL Program      |
| 2  | Java is an object oriented    |
| 4  | C# is also an object%oriented |
+----+-------------------------------+

% चिन्ह वाले रिकॉर्ड खोजने का क्वेरी

SELECT * FROM FindPercentInVarcharDemo WHERE Words LIKE '%|%%' ESCAPE '|';

परिणाम (केवल % चिन्ह वाले मान):

+----+-------------------------------+
| Id | Words                         |
+----+-------------------------------+
| 1  | This is a My%SQL Program      |
| 4  | C# is also an object%oriented |
+----+-------------------------------+

व्याख्या

  • ESCAPE '|' - पाइप (|) को एस्केप कैरेक्टर के रूप में परिभाषित करता है
  • '%|%%' - पहला % किसी भी कैरेक्टर के लिए वाइल्डकार्ड है, |% वास्तविक % चिन्ह से मेल खाता है, अंतिम % फिर से वाइल्डकार्ड है
  • यह तरीका सुनिश्चित करता है कि केवल वास्तविक % चिन्ह वाले रिकॉर्ड ही मिलें
  1. - MySQL में ORDER BY DESC LIMIT OFFSET से दूसरा अधिकतम मान ढूंढें

    MySQL में ORDER BY ... DESC LIMIT 1 OFFSET 1 का उपयोग करके दूसरा सबसे बड़ा मान (second maximum) प्राप्त कर सकते हैं। सिंटैक्स SELECT * FROM टेबल_नाम ORDER BY कॉलम_नाम DESC LIMIT 1 OFFSET 1; उदाहरण 1. टेबल बनाएं CREATE TABLE DemoTable (Value INT); 2. डेटा डालें INSERT INTO DemoTable VALUES(1),

  1. - MySQL में Nth अधिकतम मान खोजने का क्वेरी

    आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable -> ( -> Value int -> ); Query OK, 0 rows affected (0.59 sec) इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें: mysql> insert into DemoTable values(40); Query OK, 1 row affected (0.26 sec) mysql> insert into DemoTable

  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