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

MySQL में WHERE क्लॉज का उपयोग करके सभी परिणाम कैसे प्राप्त करें?

LIKE '%' वाइल्डकार्ड का उपयोग

WHERE क्लॉज के साथ LIKE '%' का उपयोग करके सभी रिकॉर्ड्स प्राप्त कर सकते हैं, हालांकि यह व्यावहारिक नहीं है।

सिंटैक्स

SELECT * FROM yourTableName WHERE yourColumnName LIKE '%';

उदाहरण

1. टेबल बनाना

mysql> CREATE TABLE DemoTable (
    Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    Name VARCHAR(20)
);
Query OK, 0 rows affected (0.56 sec)

2. डेटा डालना

mysql> INSERT INTO DemoTable(Name) VALUES('Larry');
mysql> INSERT INTO DemoTable(Name) VALUES('John');
mysql> INSERT INTO DemoTable(Name) VALUES('Bob');
mysql> INSERT INTO DemoTable(Name) VALUES('Carol');
mysql> INSERT INTO DemoTable(Name) VALUES('Chris');
mysql> INSERT INTO DemoTable(Name) VALUES('David');
mysql> INSERT INTO DemoTable(Name) VALUES('Mike');
mysql> INSERT INTO DemoTable(Name) VALUES('Sam');

3. सभी रिकॉर्ड्स देखना

mysql> SELECT * FROM DemoTable;
+----+-------+
| Id | Name  |
+----+-------+
| 1  | Larry |
| 2  | John  |
| 3  | Bob   |
| 4  | Carol |
| 5  | Chris |
| 6  | David |
| 7  | Mike  |
| 8  | Sam   |
+----+-------+
8 rows in set (0.00 sec)

4. WHERE LIKE '%' के साथ

mysql> SELECT * FROM DemoTable WHERE Name LIKE '%';
+----+-------+
| Id | Name  |
+----+-------+
| 1  | Larry |
| 2  | John  |
| 3  | Bob   |
| 4  | Carol |
| 5  | Chris |
| 6  | David |
| 7  | Mike  |
| 8  | Sam   |
+----+-------+
8 rows in set (0.00 sec)

महत्वपूर्ण नोट्स

⚠️ व्यावहारिक नहीं: यह तरीका केवल शैक्षिक उद्देश्य के लिए है। वास्तविक उपयोग में:
  • SELECT * FROM DemoTable; लिखें - सरल और तेज़
  • WHERE क्लॉज तभी उपयोग करें जब वास्तविक फ़िल्टर हो
  • LIKE '%' इंडेक्स का उपयोग नहीं कर पाता (फुल टेबल स्कैन)

LIKE पैटर्न संदर्भ

पैटर्न मिलान
% कोई भी स्ट्रिंग (खाली सहित) - NULL नहीं
_ कोई भी एक कैरेक्टर
%abc% जिसमें 'abc' हो
abc% 'abc' से शुरू होने वाला
%abc 'abc' पर खत्म होने वाला

NULL मानों का व्यवहार

-- NULL मान LIKE '%' से मेल नहीं खाते!
INSERT INTO DemoTable(Name) VALUES(NULL);
SELECT * FROM DemoTable WHERE Name LIKE '%';  -- NULL पंक्ति नहीं दिखेगी

-- NULL भी शामिल करने के लिए
SELECT * FROM DemoTable WHERE Name LIKE '%' OR Name IS NULL;

डायनामिक WHERE क्लॉज बनाने के लिए

एप्लिकेशन कोड में जब WHERE क्लॉज वैकल्पिक हो:

-- PHP उदाहरण
$where = $searchTerm ? "WHERE Name LIKE '%$searchTerm%'" : "WHERE Name LIKE '%'";
$sql = "SELECT * FROM DemoTable $where";

बेहतर विकल्प

-- वैकल्पिक फ़िल्टर के लिए
SELECT * FROM DemoTable 
WHERE (@searchTerm IS NULL OR Name LIKE CONCAT('%', @searchTerm, '%'));
  1. - MySQL में AND ऑपरेटर का उपयोग करके विशिष्ट रिकॉर्ड कैसे हटाएं?

    MySQL में DELETE स्टेटमेंट के WHERE क्लॉज में AND ऑपरेटर का उपयोग करके एकाधिक शर्तों के आधार पर विशिष्ट पंक्तियों को हटाया जा सकता है। सिंटैक्स DELETE FROM table_name WHERE condition1 AND condition2 AND ...; उदाहरण तालिका बनाएं और डेटा डालें: mysql> CREATE TABLE DemoTable (Id INT, Name VARCHAR(

  1. - MySQL क्वेरी में दो बार LIKE क्लॉज का उपयोग

    OR ऑपरेटर से एकाधिक LIKE शर्तें जोड़ें एक कॉलम पर दो अलग-अलग पैटर्न से फ़िल्टर करने के लिए OR के साथ दो LIKE क्लॉज का उपयोग करें। टेबल बनाएं और डेटा डालें: mysql> create table DemoTable2009 ( Name varchar(20) ); Query OK, 0 rows affected (0.51 sec) mysql> insert into DemoTable2009 values(John

  1. - C# में सभी ड्राइव्स की जानकारी प्राप्त करना

    C# में DriveInfo.GetDrives() मेथड का उपयोग करके सिस्टम पर उपलब्ध सभी ड्राइव्स की जानकारी प्राप्त की जा सकती है। यह System.IO नेमस्पेस में पाया जाता है। उदाहरण = 1024 && index < suffixes.Length - 1) { size /= 1024; index++; } return ${size:F2