मुझे मिले दो उत्तरों के बाद (जिनमें से कोई भी पूरा नहीं था इसलिए मैंने अपना लिखा), मैंने अंततः जो किया वह इस प्रकार है:
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
यह बहुत जल्दी काम करता है। मैंने सहसंबद्ध सबक्वेरी के साथ भी प्रयास किया लेकिन यह बहुत धीमा था (परिमाण के क्रम), इसलिए मैं शामिल होने के साथ चिपका हुआ हूं।