Попробуйте ниже для BigQuery Standard SQL
#standardSQL
SELECT ANY_VALUE(o).*
FROM `xxx.facebook_ads.ads_insights` o
INNER JOIN (
SELECT campaign_id,
MAX(_sdc_sequence) AS seq,
MAX(_sdc_batched_at) AS batch
FROM `xxx.facebook_ads.ads_insights`
GROUP BY campaign_id
) oo
ON o.campaign_id = oo.campaign_id
AND o._sdc_sequence = oo.seq
AND o._sdc_batched_at = oo.batch
GROUP BY o.campaign_id
Как видите, изменение действительно в первой строке вашего кода (в операторе SELECT) и в дополнительной строке в конце запроса (GROUP BY) - так относительно просто исправить
Я не знаком с данными аналитики Facebook, поэтому не могу проверить выше - но для простых случаев, которые я мог бы перепроектировать из деталей в вопросе - это должно работать!