0

是否可以在 mysql 中创建一个自定义函数,如 SUM、MAX 等。它接受多列并对每一行进行一些操作?

我问这个问题的原因是因为我尝试使用存储过程来执行我的逻辑,但不幸的是找不到如何从表名中选择数据的方法,其中表名是输入参数。

有人建议使用动态 sql,但我无法获取光标。所以我唯一的希望是使用自定义函数。

提前10倍。

附言

为了使问题更清楚,我想做的是:

我想计算数据库表中每一行代表坐标(纬度和经度)的路线的距离。不幸的是,我拥有的数据非常大,如果我查询数据并使用 java 进行计算,将数据传输到 Web 服务器需要半分钟以上,所以我想在 sql 机器上进行计算。

4

1 回答 1

0

select something1, something2 from table_name 其中表名是一个变量

多个结构相同的表(此类查询的先决条件)与正交设计原则相反。

不要这样做。至少不是没有很好的理由——有了合适的索引,每张表(数千万)条记录足以让 MySQL 轻松处理,而无需任何分区;即使确实需要对数据进行分区,也有比这种手动混乱更好的方法(这可能会导致数据模棱两可、可能不一致,并导致数据操作代码中的冗余和复杂性)。

于 2013-10-11T21:44:20.717 回答