MySQL 8.4 发行说明
SQL 标准对窗口函数施加了一个限制,即它们不能在 UPDATE
或 DELETE
语句中用于更新行。在这些语句的子查询中使用此类函数(用于选择行)是允许的。
MySQL 不支持这些窗口函数功能
DISTINCT
聚合窗口函数的语法。嵌套窗口函数。
依赖于当前行值的动态框架端点。
解析器识别这些窗口结构,但它们不受支持
GROUPS
框架单元指定符将被解析,但会产生错误。仅支持ROWS
和RANGE
。EXCLUDE
框架规范子句将被解析,但会产生错误。IGNORE NULLS
将被解析,但会产生错误。仅支持RESPECT NULLS
。FROM LAST
将被解析,但会产生错误。仅支持FROM FIRST
。
对于给定的 SELECT
,支持最多 127 个窗口。请注意,单个查询可以使用多个 SELECT
子句,并且每个子句都支持最多 127 个窗口。唯一窗口的数量定义为命名窗口和任何在任何窗口函数的 OVER
子句中作为一部分指定的隐式窗口的总和。您还应该注意,使用大量窗口的查询可能需要增加默认线程堆栈大小(thread_stack
系统变量)。