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

SQL में डुप्लिकेट पंक्तियों को कैसे हटाएं

समस्या:

आप किसी क्वेरी के परिणाम सेट से किसी भी डुप्लीकेट पंक्तियों को हटाना चाहते हैं ताकि प्रत्येक पंक्ति केवल एक बार दिखाई दे।

उदाहरण:

हमारे डेटाबेस में clothes निम्नलिखित कॉलम में डेटा के साथ:id , name , color , और year_produced

<थ>नाम <थ>रंग
id साल_उत्पादित
1 टी-शर्ट पीला 2015
2 जैकेट नीला 2016
3 जीन्स काला 2015
4 जैकेट नीला 2015
5 जैकेट हरा 2016
6 जैकेट पीला 2017
7 टोपी पीला 2017

आइए 2017 से पहले निर्मित कपड़ों के गैर-दोहराए गए नाम और रंग प्राप्त करें।

समाधान:

SELECT DISTINCT name,
  color
FROM clothes
WHERE year_produced < 2017;

ये रहा परिणाम:

<थ>रंग
नाम
टी-शर्ट पीला
जैकेट नीला
जीन्स काला
जैकेट हरा

ध्यान दें कि नीला इस परिणाम सेट में केवल एक बार दिखाई देता है, भले ही वह मूल तालिका में दो बार दिखाई दे। ऐसा इसलिए है क्योंकि हमने निर्दिष्ट किया है कि हम केवल उन्हीं पंक्तियों का चयन करना चाहते हैं जिनके लिए नाम-रंग संयोजन अद्वितीय है।

चर्चा:

बस DISTINCT का उपयोग करें SELECT . के बाद कीवर्ड यदि आप केवल गैर-दोहराई गई पंक्तियों का चयन करना चाहते हैं। यह कीवर्ड केवल आपके द्वारा सूचीबद्ध कॉलम के आधार पर क्वेरी को किसी भी डुप्लिकेट पंक्तियों को छोड़ने के लिए बाध्य करता है।

यहां केवल उन पंक्तियों को चुनने का एक उदाहरण दिया गया है जिनके लिए आइटम का नाम अद्वितीय है:

SELECT DISTINCT name
FROM clothes
WHERE year_produced < 2017;

पिछली क्वेरी के विपरीत, यह केवल तीन रिकॉर्ड लौटाता है:

नाम
टी-शर्ट
जीन्स

जबकि मूल तालिका में चार जीन्स हैं (दो नीली, एक हरी और एक पीली), आइटम इस परिणाम सेट में केवल एक बार दिखाई देता है DISTINCT के लिए धन्यवाद कीवर्ड।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL डेटा प्रकार:5 सबसे खराब विकल्प जिन्हें आपको आज ही बंद करने की आवश्यकता है

  2. गिट ब्रांचिंग नेमिंग कन्वेंशन:सर्वोत्तम अभ्यास

  3. SQL में REPLACE का उपयोग कैसे करें

  4. ऑन-प्रिमाइसेस सुरक्षा नियंत्रण बनाम प्रमुख क्लाउड प्रदाताओं का मानचित्रण - संस्करण 4.0

  5. एसक्यूएल में टेबल में कॉलम कैसे जोड़ें?