select a.*
from
(
select 'from_t1' t_type, t1.date, t1.event from t1 where t1.date = :date
union all
select 'from_t2' t_type, t2.date, t2.event from t2 where t2.date = :date
) a
select t1.id, t1.event_type_id, t2.type_name, t1.date, t1.event
from event t1
join evet_type t2 on t1.event_type_id = t2.id
where
(t1.event_type_id = 1 and Month(t1.date) = Month(STR_TO_DATE(:date, '%d.%m.%Y')) and Day(t1.date) = Day(STR_TO_DATE(:date, '%d.%m.%Y'))) -- так получаем периодичные события (тип id = 1 ), год в t1.date игнорируем
OR
(t1.event_type_id <> 1 and t1.date = STR_TO_DATE(:date, '%d.%m.%Y')) -- а так получаем не периодичные события, отличные от типа 1.