SELECT p.*, mp.nome AS nome_ultima_materiaprima
FROM (
SELECT nome, categoria, preco, ARRAY_LENGTH(materiasprimas) AS qtd_materiasprimas,
CAST(materiasprimas[OFFSET(ARRAY_LENGTH(materiasprimas) - 1)] AS INT64) AS ultima_materiaprima,
distribuicao[OFFSET(ARRAY_LENGTH(distribuicao) - 1)] as ultima_distribuicao
FROM curso-big-query-19140.belleza_verde_vendas.produtos
) p
JOIN curso-big-query-19140.belleza_verde_vendas.materiasprimas mp ON p.ultima_materiaprima = mp.id_materia;