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

एसटीआई और माता-पिता के रिश्ते से जुड़े डुप्लिकेट रिकॉर्ड खोजने का समाधान

ऐसा लगता है कि निम्न SQL चाल चल रहा है

big_query = "
  SELECT EXISTS (
    SELECT 1
    FROM buyables b1
      JOIN buyables b2
        ON b1.shop_week_id = b2.shop_week_id
        AND b1.location_id = b2.location_id
    WHERE
      b1.parent_id != %1$d
      AND b2.parent_id = %1$d
      AND b1.type = 'Item'
      AND b2.type = 'Item'
    GROUP BY b1.parent_id
    HAVING COUNT(*) = ( SELECT COUNT(*) FROM buyables WHERE parent_id = %1$d AND type = 'Item' )
  )
"

ActiveRecord के साथ, आप select_value का उपयोग करके यह परिणाम प्राप्त कर सकते हैं :

class Basket < Buyable
  def has_duplicate
    !!connection.select_value( big_query % id )
  end
end

हालांकि मैं प्रदर्शन के बारे में इतना निश्चित नहीं हूं



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. स्प्रिंग बूट में दो संस्थाओं के बीच कई-से-अनेक संबंध

  2. JDBC और MySQL के साथ पंक्तियों को जोड़ने में समस्या?

  3. MySQL में एक पूर्ण-पाठ खोज में * (तारांकन चिह्न) तैयार करना

  4. कमांड लाइन का उपयोग करके .sql फ़ाइल निष्पादित करें

  5. MySQL/PDO::quote(), पूर्णांकों के आसपास सिंगल कोट्स डालना