Nie wyjaśniono, czy kolejność zestawu wyników jest ważna, więc równie dobrze można spróbować:
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
)
Zastrzeżenie:Testowane w SQL Server, ale nie używam niczego specyficznego dla tej wersji SQL.