Я думаю, вы просто хотите условную агрегацию:
select vehicle_model, date,
sum(case when Alter = 'true' then 1 else 0 end) as num_alerts,
avg(case when Alter = 'true' then 100.0 else 0 end) as percent_alerts
from MyTable
group by vehicle_model, date;
Если вы хотите, чтобы оповещения были в разных строках, то:
select vehicle_model, date, alert,
count(*) as cnt,
count(*) * 100.0 / sum(count(*)) over (partition by vehicle_model, date) as percentage
from MyTable
group by vehicle_model, date, alert;