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

MySQL में डुप्लिकेट मानों को केवल एक बार चुनें

DISTINCT कीवर्ड से अद्वितीय मान प्राप्त करें

DISTINCT कीवर्ड डुप्लिकेट पंक्तियाँ हटाकर केवल अद्वितीय मान लौटाता है।

सिंटैक्स

SELECT DISTINCT yourColumnName FROM yourTableName;

उदाहरण: टेबल और डेटा (डुप्लिकेट नाम और उम्र के साथ)

mysql> create table displayOnlyDistinctValue (
    -> UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> UserName varchar(100),
    -> UserAge int
    -> );
mysql> INSERT INTO displayOnlyDistinctValue(UserName,UserAge) VALUES
('Larry',23), ('Mike',23), ('Larry',21), ('Sam',23), ('Carol',25),
('Sam',26), ('Sam',27), ('Bob',22), ('Larry',22);

सभी डेटा

+--------+----------+---------+
| UserId | UserName | UserAge |
+--------+----------+---------+
| 1      | Larry    | 23      |
| 2      | Mike     | 23      |
| 3      | Larry    | 21      |
| 4      | Sam      | 23      |
| 5      | Carol    | 25      |
| 6      | Sam      | 26      |
| 7      | Sam      | 27      |
| 8      | Bob      | 22      |
| 9      | Larry    | 22      |
+--------+----------+---------+

केस 1: अद्वितीय नाम

mysql> SELECT DISTINCT UserName FROM displayOnlyDistinctValue;
+----------+
| UserName |
+----------+
| Larry    |
| Mike     |
| Sam      |
| Carol    |
| Bob      |
+----------+

केस 2: अद्वितीय उम्र

mysql> SELECT DISTINCT UserAge FROM displayOnlyDistinctValue;
+---------+
| UserAge |
+---------+
| 23      |
| 21      |
| 25      |
| 26      |
| 27      |
| 22      |
+---------+

एकाधिक कॉलम पर DISTINCT

SELECT DISTINCT UserName, UserAge FROM table; -- नाम+उम्र का अद्वितीय संयोजन

DISTINCT vs GROUP BY

  • DISTINCT - सरल, केवल अद्वितीय मान
  • GROUP BY - एग्रीगेशन (COUNT, SUM) के साथ उपयोगी
  • प्रदर्शन समान होता है (आमतौर पर)
  1. - MySQL में INSERT INTO SELECT से दूसरी टेबल के डेटा से मान डालें

    MySQL में INSERT INTO ... SELECT स्टेटमेंट का उपयोग करके एक टेबल से डेटा चुनकर दूसरी टेबल में डाल सकते हैं। यह डेटा माइग्रेशन, आर्काइविंग, रिपोर्टिंग टेबल भरने, और ETL प्रक्रियाओं के लिए मूलभूत तकनीक है। सिंटैक्स INSERT INTO target_table (col1, col2, col3) SELECT col1, col2, col3 FROM source_table

  1. - MySQL में एक टेबल से डेटा चुनना जहाँ कॉलम मान दूसरी टेबल से मेल खाएँ

    EXISTS सबक्वेरी से क्रॉस-टेबल मिलान EXISTS सबक्वेरी का उपयोग करके एक टेबल की पंक्तियाँ चुनें जहाँ कॉलम मान दूसरी टेबल के कॉलम मान से मेल खाता हो। पहली टेबल (विषय) (111, MySQL), (112, MongoDB), (113, Java), (114, C), (115, MySQL); दूसरी टेबल (छात्र) (Chris, MySQL), (Bob, MySQL), (Sam, MySQL), (C

  1. - MySQL टेबल पर केवल 3 क्रमबद्ध पंक्तियां कैसे चुनें?

    परिचय MySQL में ORDER BY क्लॉज के साथ LIMIT का उपयोग करके क्रमबद्ध परिणामों में से केवल निर्दिष्ट संख्या में पंक्तियां प्राप्त की जा सकती हैं। उदाहरण: टेबल बनाना और डेटा डालना ); Query OK, 0 rows affected (0.52 sec) INSERT INTO DemoTable1551(EmployeeName) VALUES(Adam); Query OK, 1 row affected (