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

MySQL: 5 समान मानों में से केवल एक मान चुनें

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

mysql> create table DemoTable800 ( Value int ); 
Query OK, 0 rows affected (0.59 sec)

इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें। यहां हमने 5 समान मान डाले हैं:

mysql> insert into DemoTable800 values(10); 
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable800 values(10); 
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable800 values(10); 
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable800 values(10); 
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable800 values(10); 
Query OK, 1 row affected (0.10 sec)

सेलेक्ट स्टेटमेंट का उपयोग करके टेबल से सभी रिकॉर्ड प्रदर्शित करें:

mysql> select * from DemoTable800;

यह निम्नलिखिक आउटपुट देगा:

+-------+
| Value |
+-------+
| 10    |
| 10    |
| 10    |
| 10    |
| 10    |
+-------+
5 rows in set (0.00 sec)

5 समान मानों में से केवल एक मान चुनने की क्वेरी

mysql> select distinct Value from DemoTable800

यह निम्नलिखिक आउटपुट देगा:

+-------+
| Value |
+-------+
| 10    |
+-------+
1 row in set (0.00 sec)

व्याख्या

  • DISTINCT डुप्लिकेट पंक्तियों को हटाकर केवल अद्वितीय मान लौटाता है
  • यहां सभी 5 पंक्तियों में मान 10 है, इसलिए केवल एक पंक्ति लौटती है
  • DISTINCT सभी चयनित कॉलम के संयोजन पर लागू होता है
  • SELECT DISTINCT col1, col2 col1,col2 के अद्वितीय संयोजन देता है

संबंधित: गिनती के साथ

SELECT Value, COUNT(*) as cnt FROM DemoTable800 GROUP BY Value;

यह दिखाएगा: Value=10, cnt=5

प्रदर्शन नोट

DISTINCT के लिए अस्थायी टेबल या सॉर्टिंग की आवश्यकता हो सकती है; बड़े डेटासेट पर GROUP BY कभी-कभी तेज होता है।

  1. - MySQL में ENUM कॉलम से केवल 'NO' मानों की गणना करें

    MySQL में ENUM कॉलम पर सशर्त गणना के लिए बूलियन अभिव्यक्ति का योग (SUM(condition)) उपयोग कर सकते हैं। MySQL में TRUE = 1 और FALSE = 0 होता है। टेबल बनाएं mysql> CREATE TABLE DemoTable1829 ( Name VARCHAR(20), isTopper ENUM(YES,NO) ); डेटा डालें mysql> INSERT INTO DemoTable1829 VALUES(

  1. - MySQL में SELECT INTO वेरिएबल से विशिष्ट पंक्ति का एकल मान प्राप्त करें

    SELECT column INTO @variable FROM table WHERE condition का उपयोग करके एकल पंक्ति का एकल मान यूज़र-डिफ़ाइन्ड वेरिएबल में संग्रहीत करें। टेबल बनाएं mysql> CREATE TABLE DemoTable1896 ( StudentId INT NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentName VARCHAR(20), StudentMarks INT ); डेटा

  1. - MySQL में मान 0 होने पर दूसरे कॉलम का मान कैसे चुनें?

    IF() फ़ंक्शन का उपयोग यदि किसी कॉलम का मान 0 है तो दूसरे कॉलम का मान लेने के लिए IF() फ़ंक्शन प्रयोग करें: select IF(yourColumnName1=0, yourColumnName2, yourColumnName1) as anyAliasName from yourTableName; टेबल बनाना और डेटा डालना insert into demo30(value,original_value) values(30,0); डेटा देखना