Моя таблица содержит первичный ключ, затем 5 списков реальных значений (16 бит): время, канал A, B, C и D. Каждый список содержит 2000 элементов.
Моя проблема в том, что я пробовал использовать функции на основе Python или SQL, например:
Код: Выделить всё
CREATE OR REPLACE FUNCTION trapezoid_mul_fast(
a float4[],
b float4[],
x float8[]
)
RETURNS float8
LANGUAGE SQL
IMMUTABLE
AS $$
SELECT SUM(
(x[i] - x[i-1]) * ((a[i]*b[i]) + (a[i-1]*b[i-1])) * 0.5
)
FROM generate_subscripts(a, 1) AS i
WHERE i > 1;
$$;
Код: Выделить всё
SELECT
id,
trapezoid_mul_fast(channel_a, channel_b, time_ns) AS int_ab
FROM my_table;
Подробнее здесь: https://stackoverflow.com/questions/798 ... ge-dataset
Мобильная версия