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

MySQL/SQL:अद्यतन तालिका से ही सहसंबद्ध उपश्रेणी के साथ अद्यतन करें

मुझे मिले दो उत्तरों के बाद (जिनमें से कोई भी पूरा नहीं था इसलिए मैंने अपना लिखा), मैंने अंततः जो किया वह इस प्रकार है:

UPDATE Table AS target
INNER JOIN 
(
select category, appearances_sum
from Table T inner join (
    select category as cat, sum(appearances) as appearances_sum
    from Table
    group by cat
) as agg
where T.category  = agg.cat
group by category
) as source
ON target.category = source.category
SET target.probability = target.appearances / source.appearances_sum 

यह बहुत जल्दी काम करता है। मैंने सहसंबद्ध सबक्वेरी के साथ भी प्रयास किया लेकिन यह बहुत धीमा था (परिमाण के क्रम), इसलिए मैं शामिल होने के साथ चिपका हुआ हूं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. php साइट और mysql db का बैकअप लेने के लिए सुझाव

  2. पृष्ठ पर अंक लगाना के लिए php नमूना स्क्रिप्ट

  3. सभी बच्चों को पैरेंट आईडी द्वारा प्राप्त करें और जहां mysql में क्लॉज है

  4. MySQL व्यू कैसे बनाएं

  5. IllegalArgumentException:प्रकार अशक्त नहीं हो सकता