SQL WHERE कथन

रिकॉर्ड फ़िल्टर करने के लिए WHERE क्लॉज का उपयोग करें

SQL WHERE कथन

WHERE स्टेटमेंट का उपयोग रिकॉर्ड्स को फ़िल्टर करने के लिए किया जाता है।

इसका उपयोग केवल उन रिकॉर्ड्स को निकालने के लिए किया जाता है जो एक निर्दिष्ट शर्त को पूरा करते हैं।

उदाहरण: मेक्सिको से सभी ग्राहकों का चयन करें

SELECT * FROM Customers
WHERE Country='Mexico';

वाक्यविन्यास

SELECT column1, column2, ...
FROM table_name
WHERE condition;

💡नोट:

WHERE स्टेटमेंट का उपयोग केवल SELECT स्टेटमेंट में ही नहीं बल्कि UPDATE, DELETE आदि में भी किया जाता है!

प्रदर्शन डेटाबेस

नीचे उदाहरणों में प्रयुक्त ग्राहक तालिका से एक चयन दिया गया है:

CustomerID CustomerName ContactName Address City PostalCode Country
1 Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4 Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden

पाठ फ़ील्ड बनाम संख्या फ़ील्ड

SQL को टेक्स्ट मानों के आसपास सिंगल कोट्स की आवश्यकता होती है (अधिकांश डेटाबेस प्रारूप दोहरे कोट्स की भी अनुमति देते हैं)।

हालाँकि, संख्यात्मक फ़ील्ड को उद्धरण चिह्नों में संलग्न नहीं किया जाना चाहिए:

उदाहरण

SELECT * FROM Customers
WHERE CustomerID=1;

पाठ फ़ील्ड

WHERE Country = 'Mexico'

एकल उद्धरण आवश्यक हैं

संख्या फ़ील्ड

WHERE CustomerID = 1

किसी उद्धरण की आवश्यकता नहीं

WHERE कथन में संचालक

आप खोज को फ़िल्टर करने के लिए = ऐप के अलावा अन्य ऐप्स का भी उपयोग कर सकते हैं।

उदाहरण: 80 से अधिक CustomerID वाले सभी ग्राहकों का चयन करें

SELECT * FROM Customers
WHERE CustomerID > 80;

वे फ़ंक्शन जिनका उपयोग WHERE क्लॉज में किया जा सकता है:

अनुप्रयोग व्याख्या उदाहरण
= के बराबर WHERE Country = 'Mexico'
> अधिक WHERE Age > 25
< कम WHERE Price < 100
>= से बड़ा या उसके बराबर WHERE Quantity >= 10
<= से कम या बराबर WHERE Salary <= 50000
<> सम नही
नोट: SQL के कुछ संस्करणों में इस ऑपरेटर को != के रूप में लिखा जा सकता है
WHERE Country <> 'USA'
BETWEEN एक निश्चित सीमा के अंदर WHERE Price BETWEEN 10 AND 20
LIKE एक पैटर्न की तलाश करें WHERE Name LIKE 'A%'
IN किसी कॉलम के लिए एकाधिक संभावित मान निर्दिष्ट करने के लिए WHERE Country IN ('USA', 'UK')

शैली के उदाहरण

के बराबर

एक निर्दिष्ट मान के साथ रिकॉर्ड

SELECT * FROM Customers
WHERE Country = 'Germany';

अधिक

निर्दिष्ट मान से अधिक

SELECT * FROM Products
WHERE Price > 50;

सम नही

निर्दिष्ट मान को छोड़कर

SELECT * FROM Customers
WHERE Country <> 'USA';