SELECT DISTINCT a,b,c FROM t
е приблизително еквивалентно на:
SELECT a,b,c FROM t GROUP BY a,b,c
Добра идея е да свикнете със синтаксиса GROUP BY, тъй като е по-мощен.
За вашето запитване бих го направил така:
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
)