まず第一に、あなたはgroup byを逃しました 、したがって、mysqlはそれについて文句を言いませんが、あなたはhours およびhours2 値は無意味です。次に、UNIONの結果です。 派生サブクエリに入れることができるので、必要な合計が得られます:
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