प्रत्येक मूल्य के डुप्लिकेट को दोहराएं [डुप्लिकेट]
मुझे हर घटना की गणना के साथ अपनी तालिका में एक कॉलम जोड़ने की आवश्यकता है। इसलिए यदि मान अद्वितीय है तो स्तंभ मान 1 होना चाहिए, लेकिन अगर एक से अधिक प्रतिलिपि हो तो मुझे हर पंक्ति (1,2 ...) के लिए एक अलग मान चाहिए।
डेटाबेस उदाहरण के लिए पोस्टग्रेज है
आईडी | मान | गिनती |
---|---|---|
१ | ए | १ |
२ | ए | २ |
३ | बी | १ |
४ | बी | २ |
५ | बी | ३ |
६ | सी | १ |
डेटाबेस उदाहरण https://dbfiddle.uk/?rdbms=postgres_10&fiddle=0e7132f3f094bd93b390ccae2e811696
जवाब
5 a_horse_with_no_name
यह विंडो फ़ंक्शंस का उपयोग करके किया जा सकता है
select id, value, count(*) over (partition by value order by id)
from the_table
order by id, value;