Я обычно стараюсь избегать подзапросов, но вы можете использовать один для этого случая.Сделайте ту же группу по и убедитесь, что идентификатор не входит в подзапрос идентификаторов, которые имеют 0 для SomeVar.В этом случае Different будет делать то же самое и более эффективно, поэтому сначала я сделаю это:
SELECT DISTINCT ID
FROM [table_name]
WHERE ID NOT IN (
SELECT ID FROM [table_name] WHERE SomeVar = 0
);
И если вы хотите получить другую информацию, используя GROUP BY:
SELECT ID, max(SomeVar), count(*), sum(SomeVar)
FROM [table_name]
WHERE ID NOT IN (
SELECT ID FROM [table_name] WHERE SomeVar = 0
)
GROUP BY ID;