mysql - 将函数应用于整个表

标签 mysql sql mysql-workbench

我有一个函数,它接受“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、日期,并从另一个表中提取价格并计算调整后的价格。

因此,我的最终输出应该是一个包含以下内容的表格:

ID        DATE         Price        Adj. Price

我怎么可能做到这一点?

最佳答案

只需使用选择:

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

关于mysql - 将函数应用于整个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53299736/

相关文章:

MySQL 外键错误 1005 errno 150 主键作为外键

mysql - 搜索两个不同数据库之间的共同值

mysql - 哪种 MySQL Join 查询更适合这种情况?

Mysql-这是一个很好的优化查询吗?

sql - Oracle SQL 中的索引、EXPLAIN PLAN 和记录访问

mysql - 模式创建后抛出错误

mysql - 重复记录的 SQL 查询,保留重复 ID 的列表

mysql - 这种情况下的最佳设计数据库

MySQL 普通文本到脊椎大小写转换

mysql - 在语句的 WHERE 部分使用 OR 过滤 SQL 结果的最佳实践