Ваш синтаксис неверен для различных ... Используя (parens), он думает, что Distinct является функцией и ожидает, что внутреннее значение в качестве параметра передается и возвращает значение ... то, что вы хотите. .. Кроме того, поскольку у вас нет других столбцов, которые вы возвращаете, вам не нужно ограничивать один ... COUNT (*) или COUNT (DISTINCT SomeColumn) ВСЕГДА будут возвращать одну строку в одиночку ... без группировки по необходимо.
select count(distinct vw_SIPMIP.product_id) YourDistinctCount
from vw_SIPMIP,
sp_mip_rule
where vw_SIPMIP.product_id not in (select a.product_id from vw_non_SIPMIP a)
and sp_mip_rule.id = vw_SIPMIP.id
and sp_mip_rule.createdby != '_IMPORT'