gpt4 book ai didi

mysql - ORDER BY 中使用的计算值是否在排序期间重新计算过?

转载 作者:可可西里 更新时间:2023-11-01 08:52:13 25 4
gpt4 key购买 nike

假设我们有一个查询,它按选择的计算值排序,例如:

select * from table
order by col1 * col2 - col3

在大多数语言的典型排序操作中,在排序过程中多次使用排序值是很常见的,因为给定的记录可能与许多其他记录进行比较。有可能mysql有这样的实现。

如果 mysql 每行 一次 计算这样的值并在排序完成时临时存储它们,或者每当进行比较时重新计算这些值,谁能说明确地 (这可能是 1-n 次)?

我已经标记了这个 mysql,但我欢迎关于/包括其他流行数据库的评论/回答

最佳答案

答案是...mysql 每行执行计算一次

由于缺乏可信的答案,我运行了一个明确的 test on sqlfiddle它按 not deterministic 函数(每次比较时都必须调用)的结果排序,该函数在被调用时也记录在另一个表中。显示调用次数=行数。

关于mysql - ORDER BY 中使用的计算值是否在排序期间重新计算过?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11875870/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com