Toto by vám mělo fungovat:
SELECT MyDate, min(DateType) as DateType
FROM (
SELECT mydate - 1 AS MyDate, 2 AS DateType
FROM myTable
WHERE myTable.fkId = @MyFkId;
UNION
SELECT mydate + 1 AS MyDate, 2 AS DateType
FROM myTable
WHERE myTable.fkId = @MyFkId;
UNION ALL
SELECT mydate AS MyDate, 1 AS DateType
FROM myTable
WHERE myTable.fkId = @MyFkId;
) AS myCombinedDateTable
group by MyDate
Poznámka:Změnil jsem druhý UNION na UNION ALL pro lepší výkon; poslední poddotaz nikdy nebude mít duplikáty s prvními dvěma poddotazy, protože DateType je vždy 2 pro první dva a 1 pro poslední UNION ed dotaz.