Отговорът на @Blorgbeard (използване на топ 1 и подреждане по) вероятно е най-добрият начин, но за да сте различни, можете също да използвате подзаявка и не съществува:
SELECT name FROM names
WHERE (colA = @colA) OR (colA = 'ALL' AND NOT EXISTS(
SELECT name FROM names
WHERE colA = @colA))
Предполагам, че "предимството" на това е, че използва по-стандартен sql.