Ниже приведен простой пример для демонстрации подхода
Для BigQuery Standard SQL
#standardSQL
WITH `project.dataset.table` AS (
SELECT [1,2,3,4,5] vector1, [5,4,3,2,1] vector2
)
SELECT *,
(SELECT SUM(element1 * element2)
FROM t.vector1 element1 WITH OFFSET pos
JOIN t.vector2 element2 WITH OFFSET pos
USING(pos)
) dot_prodict
FROM `project.dataset.table` t
с результатом
Row vector1 vector2 dot_prodict
1 1 5 35
2 4
3 3
4 2
5 1