Применение функции ко всей таблице - PullRequest
0 голосов
/ 14 ноября 2018

У меня есть функция, которая принимает в качестве входных данных "id" и "startdate", а затем возвращает значение.

DELIMITER $$
CREATE FUNCTION fp_v2.fp_spinoffadjprice (id CHAR(8), startdate DATE)
RETURNS FLOAT

BEGIN

DECLARE splitadjprice FLOAT;
DECLARE spinofffactor FLOAT;

SELECT fp_v2.fp_splitadjprice(id, startdate) INTO splitadjprice;

SELECT fp_v2.fp_spinofffactor(id, startdate) INTO spinofffactor;

RETURN splitadjprice*spinofffactor;

END$$
DELIMITER ;

У меня тогда есть большая таблица со столбцами:

ID        DATE          

Функция в основном берет идентификатор, дату из этой таблицы, извлекает цену из другой таблицы и вычисляет скорректированную цену.

Поэтому мой конечный результат должен быть таблицей с:

ID        DATE         Price        Adj. Price

Как бы я мог это сделать?

1 Ответ

0 голосов
/ 14 ноября 2018

Просто используйте select:

select t.*,
       function(id, date) as function_value
from bigtable t;
...