Allereerst heb je group by gemist , dus ook al klaagt mysql er niet over, u hours en hours2 waarden zijn zinloos. Ten tweede, jij het resultaat van UNION kan in afgeleide subquery worden geplaatst, zodat u het gewenste totaal heeft:
SELECT SUM(hr) FROM
(
Select sum(hours) as hr FROM table WHERE name='xxx' and Description='Worked'
UNION ALL
Select sum(hours2) as hr FROM table WHERE name='xxx' and Description2='Worked'
)a