Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

जहां MySQL में पंक्तियों को फ़िल्टर करने के लिए क्लॉज

यह ट्यूटोरियल श्रृंखला का हिस्सा है MySQL का उपयोग करके बेसिक SQL क्वेरीज़ सीखें। पिछले ट्यूटोरियल में, हमने MySQL में किसी तालिका से पंक्तियों को लाने या डेटा पढ़ने के लिए SQL प्रश्नों पर चर्चा की है। जब तक हम पिछले ट्यूटोरियल उदाहरणों में दिखाए गए सीमा को निर्दिष्ट नहीं करते हैं, तब तक SELECT कमांड तालिका में सभी पंक्तियों को लौटाता है। कई स्थितियों में, हमें कुछ शर्तों को पूरा करने वाली सीमित पंक्तियों को प्राप्त करने के लिए परिणामी पंक्तियों को फ़िल्टर करने की आवश्यकता होती है। हम फ़िल्टर स्थिति निर्दिष्ट करके WHERE क्लॉज का उपयोग करके पंक्तियों को फ़िल्टर कर सकते हैं। हम कीवर्ड AND, OR का उपयोग करके कई शर्तें भी निर्दिष्ट कर सकते हैं।

कहां खंड

कहां क्लॉज का उपयोग दी गई शर्तों के आधार पर तालिका से फ़िल्टर की गई पंक्तियों को पढ़ने के लिए किया जा सकता है। यदि आप डेटाबेस में दूरस्थ रूप से लॉग इन हैं, तो आपको तालिका से पंक्तियों को पढ़ने के लिए तालिका के लिए चयन विशेषाधिकार की भी आवश्यकता होगी।

# SELECT - Syntax - WHERE
SELECT column_1,column_2,... FROM table_name WHERE <single or multiple conditions>;

क्वेरी स्पष्टीकरण

MySQL कमांड चुनें दिए गए तालिका नाम से पंक्तियों या डेटा को पढ़ने के लिए इस्तेमाल किया जा सकता है जहां चयन अभिव्यक्ति और तालिका का नाम अनिवार्य है।

हम WHERE क्लॉज का उपयोग करके चुनिंदा क्वेरी द्वारा लौटाए गए परिणामी क्वेरी सेट को फ़िल्टर कर सकते हैं। हम परिणामों को फ़िल्टर करने के लिए एकल या एकाधिक शर्तों को निर्दिष्ट कर सकते हैं। कीवर्ड और और या कई शर्तों को लागू करने के लिए इस्तेमाल किया जा सकता है। हम कीवर्ड IN . का भी उपयोग कर सकते हैं और में नहीं स्तंभ मानों को मानों के समूह तक सीमित करने के लिए।

ऑपरेटर

फ़िल्टर शर्तों को लागू करते समय तुलना करने के लिए हम नीचे सूचीबद्ध ऑपरेटरों का उपयोग कर सकते हैं। तुलना दिए गए मान और तालिका कॉलम में संग्रहीत मानों का उपयोग करके की जाएगी।

= इसका उपयोग यह जांचने के लिए किया जा सकता है कि दो ऑपरेंड के मान बराबर हैं या नहीं।


!= यह जाँचता है कि क्या दो ऑपरेंड के मान समान नहीं हैं।


> यह जाँचता है कि क्या बाएँ संकार्य का मान दाएँ संकार्य के मान से अधिक है।


< यह जांचता है कि बाएं ऑपरेंड का मान दाएं ऑपरेंड के मान से कम है या नहीं।


>= यह जांचता है कि बाएं ऑपरेंड का मूल्य दाएं ऑपरेंड के मूल्य से अधिक या बराबर है या नहीं।


<= यह जांचता है कि बाएं ऑपरेंड का मूल्य दाएं ऑपरेंड के मूल्य से कम या बराबर है या नहीं।

उदाहरण

यह अनुभाग चयन . का उपयोग करके तालिका से फ़िल्टर किए गए डेटा को पढ़ने के लिए उदाहरण प्रदान करता है कहां . के साथ कमांड करें खंड। उपयोगकर्ता डेटा संग्रहीत करने के लिए आईडी, प्रथम नाम और अंतिम नाम कॉलम वाली उपयोगकर्ता तालिका बनाने के लिए नीचे दी गई क्वेरी का उपयोग करें।

# Create the User Table
CREATE TABLE `user` (
`user_id` bigint(20) NOT NULL,
`first_name` varchar(45),
`last_name` varchar(45)
);

उपयोगकर्ता तालिका में डेटा सम्मिलित करने के लिए नीचे दी गई क्वेरी का उपयोग किया जा सकता है।

# Insert Rows - All Columns
INSERT INTO `user` ( `user_id`, `first_name`, `last_name`) VALUES
( 1, 'John', 'Smith' ),
( 2, 'Rick', 'Jones' ),
( 3, 'Catherine', 'Ponting' ),
( 4, 'Harsh', 'Upadhyay' ),
( 5, 'Tajwinder', 'Singh' ),
( 6, 'Leo', NULL ),
( 7, 'Leo', 'Murphy' ),
( 8, 'Ram', 'Choudhary' ),
( 9, 'Nicole', NULL ),
( 10, 'Ram', 'Choudhary' );

उपर्युक्त क्वेरी 10 अलग-अलग उपयोगकर्ताओं का प्रतिनिधित्व करने के लिए आईडी, प्रथम नाम और अंतिम नाम वाली तालिका में 10 पंक्तियों को सम्मिलित करेगी।

अब हम यूजर टेबल में हमारे द्वारा डाले गए फ़िल्टर किए गए डेटा को पढ़ेंगे। इसे नीचे दिखाए अनुसार SELECT कमांड का उपयोग करके किया जा सकता है।

# Filter - WHERE - Read all rows having first name set to Leo
SELECT * FROM `user` WHERE `first_name` = 'Leo';

# Result
6 Leo
7 Leo Murphy


# Filter - WHERE - AND - Read all rows having first name set to Leo and last name set to Murphy
SELECT * FROM `user` WHERE `first_name` = 'Leo' AND `last_name` = 'Murphy';

# Result
7 Leo Murphy


# Filter - WHERE - IS NOT - Read all rows having last name without NULL values
SELECT * FROM `user` WHERE `last_name` IS NOT NULL;

# Result
1 John Smith
2 Rick Jones
3 Catherine Ponting
4 Harsh Upadhyay
5 Tajwinder Singh
7 Leo Murphy
8 Ram Choudhary
10 Ram Choudhary


# Filter - WHERE - OR, IN - Read all rows having first name is either John or Harsh
SELECT * FROM `user` WHERE `first_name` = 'John' OR `first_name` = 'Harsh';
SELECT * FROM `user` WHERE `first_name` IN ( 'John', 'Harsh' );

# Result
1 John Smith
4 Harsh Upadhyay

उपर्युक्त क्वेरीज़ ट्रिंग . पर विभिन्न फ़िल्टर संचालन करती हैं एकल या एकाधिक स्थितियों का उपयोग कर मान। स्ट्रिंग डेटा प्रकार वाले कॉलम के लिए फ़िल्टर लागू करते समय सिंगल कोट्स का उपयोग करना सुनिश्चित करें।

# Filter - WHERE - Read all rows having id lesser than 5
SELECT * FROM `user` WHERE `user_id` < 5;

# Result
1 John Smith
2 Rick Jones
3 Catherine Ponting
4 Harsh Upadhyay


# Filter - WHERE - LIMIT - Read all rows having id lesser than 5
SELECT * FROM `user` WHERE `user_id` < 5 LIMIT 2;

# Result
1 John Smith
2 Rick Jones


# Filter - WHERE - AND - Read all rows having id greater than 3 and lesser than 6
SELECT * FROM `user` WHERE `user_id` > 3 AND `user_id` < 6;

# Result
4 Harsh Upadhyay
5 Tajwinder Singh

ऊपर उल्लिखित क्वेरी संख्यात्मक डेटा प्रकारों के लिए शर्तें लागू करती हैं। हम नीचे दिखाए गए अनुसार विभिन्न प्रकार के मूल्यों को भी मिला सकते हैं।

# Filter - WHERE - AND - Read all rows having first name set to Harsh, id greater than 2 and lesser than 5
SELECT * FROM `user` WHERE `first_name` = 'Harsh' AND `user_id` > 3 AND `user_id` < 6;

# Result
4 Harsh Upadhyay

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL इनर जॉइन क्वेरी मल्टीपल टेबल्स

  2. PHP MYSQL अद्यतन यदि मौजूद है या सम्मिलित नहीं है तो?

  3. MySQL में TO_BASE64 () फ़ंक्शन कैसे काम करता है

  4. SQL DELETE सिंटैक्स - DBMS द्वारा सूचीबद्ध

  5. MySQL उपयोगकर्ता DB में पासवर्ड कॉलम नहीं हैं - OSX पर MySQL इंस्टॉल करना