Mettez vos conditions dans un sum()
. Comme ça, vous obtenez des comptes uniques
SELECT SUM(sourceItem = 1 AND destinationItem = 1) AS count1,
SUM(sourceItem = 1 AND destinationItem = 2) AS count2
FROM trades
Pour obtenir le décompte conditionnel complet, faites
SELECT SUM(case when sourceItem > 0 and destinationItem > 0 then 2
when sourceItem > 0 or destinationItem > 0 then 1
else 0
end) AS complete_sum
FROM trades
ou
SELECT SUM(sourceItem > 0) + sum(destinationItem > 0) AS complete_sum
FROM trades