SELECT DISTINCT a,b,c FROM t
est à peu près équivalent à :
SELECT a,b,c FROM t GROUP BY a,b,c
C'est une bonne idée de s'habituer à la syntaxe GROUP BY, car elle est plus puissante.
Pour votre requête, je le ferais comme ceci :
UPDATE sales
SET status='ACTIVE'
WHERE id IN
(
SELECT id
FROM sales S
INNER JOIN
(
SELECT saleprice, saledate
FROM sales
GROUP BY saleprice, saledate
HAVING COUNT(*) = 1
) T
ON S.saleprice=T.saleprice AND s.saledate=T.saledate
)