Het is niet duidelijk of de volgorde van de resultatenset belangrijk is, dus je kunt het net zo goed proberen:
SELECT name,
value
FROM MyTable
WHERE id = 5
AND id NOT IN
(
SELECT id
FROM MyTable
WHERE id = 0
GROUP BY MyTable.id
)
UNION
SELECT name,
value
FROM MyTable
WHERE id = 0
AND name NOT IN
(
SELECT name
FROM MyTable
WHERE id = 5
GROUP BY MyTable.name
)
Disclaimer:getest in SQL Server, maar niets specifieks voor die versie van SQL gebruikt.