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

अद्वितीय कुंजी की अनुमति देने के लिए डुप्लिकेट SQL रिकॉर्ड को हटाना

आपकी टिप्पणी के उत्तर में, यहाँ एक प्रश्न है जो MySQL में काम करता है:

delete YourTable
from YourTable
inner join YourTable yt2
on YourTable.product_id = yt2.product_id
and YourTable.id < yt2.id

यह केवल डुप्लिकेट पंक्तियों को हटा देगा। inner join प्रत्येक उत्पाद के लिए नवीनतम पंक्ति को फ़िल्टर कर देगा, भले ही उसी उत्पाद के लिए कोई अन्य पंक्ति मौजूद न हो।

पी.एस. यदि आप FROM . के बाद तालिका को अन्य नाम देने का प्रयास करते हैं , MySQL के लिए आवश्यक है कि आप डेटाबेस का नाम निर्दिष्ट करें, जैसे:

delete <DatabaseName>.yt
from YourTable yt
inner join YourTable yt2
on yt.product_id = yt2.product_id
and yt.id < yt2.id;


  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. Mysql डुप्लिकेट के बिना रिकॉर्ड के पारस्परिक जोड़े का चयन करें

  3. MySQL - यह चुनना कि कोई फ़ील्ड कितने दिन पुराना है

  4. जेपीए/हाइबरनेट ऑर्डर नामक इकाई नहीं बना सकता है

  5. MyISAM की तुलना में पूर्ण तालिका स्कैन में MySQL InnoDB इतना धीमा क्यों है?