mysql中的用户定义函数是否会在代码上方添加处理时间

mysql中的用户定义函数是否会在代码上方添加处理时间,mysql,optimization,Mysql,Optimization,我在mysql中使用一个简单的用户定义函数来更新一个大表中的一列600k行。例如 UPDATE table1 SET foo=bar(foo); 此更新是否会比函数代码显式写入更新时运行得更慢?即,用户定义的功能是否会增加处理时间的开销?您知道大概需要多少吗?它的运行速度会稍微慢一点,因为对该函数还有一个很小的额外调用,但是该函数将被编译,您应该不会看到调用与内嵌版本之间有太大的差异 具体的区别将取决于一大堆事情,所以最好的办法是自己测试。我现在正在测试它,坐着等待更新完成!想知道是否杀死它并

我在mysql中使用一个简单的用户定义函数来更新一个大表中的一列600k行。例如

UPDATE table1 SET foo=bar(foo);

此更新是否会比函数代码显式写入更新时运行得更慢?即,用户定义的功能是否会增加处理时间的开销?您知道大概需要多少吗?

它的运行速度会稍微慢一点,因为对该函数还有一个很小的额外调用,但是该函数将被编译,您应该不会看到调用与内嵌版本之间有太大的差异


具体的区别将取决于一大堆事情,所以最好的办法是自己测试。

我现在正在测试它,坐着等待更新完成!想知道是否杀死它并重新开始。对于测试,一个常见的策略通常是从小处开始,然后逐步积累。如果你刚开始做大事,你真的不知道要等多久。