### 12.21.5 窗口功能限制

[](<>)[](<>)

SQL 标准对不能在其中使用的窗口函数施加了约束[`更新`](update.html)要么[`删除`](delete.html)语句来更新行。允许在这些语句的子查询中使用此类函数（以选择行）。

MySQL 不支持这些窗口函数特性：

-   `清楚的`聚合窗口函数的语法。

-   嵌套窗口函数。

-   取决于当前行的值的动态框架端点。

    解析器识别出这些仍然不受支持的窗口结构：

-   这`组`帧单位说明符已解析，但会产生错误。仅有的`行`和`范围`支持。

-   这`排除`帧规范的子句被解析，但产生错误。

-   `忽略空值`已解析，但会产生错误。仅有的`尊重空值`支持。

-   `从最后`已解析，但会产生错误。仅有的`从一开始`支持。

    从 MySQL 8.0.28 开始，给定的最多支持 127 个窗口[`选择`](select.html).请注意，单个查询可能会使用多个`选择`子句，每个子句最多支持 127 个窗口。不同窗口的数量定义为命名窗口和指定为任何窗口函数的一部分的任何隐式窗口的总和`超过`条款。您还应该知道，使用大量窗口的查询可能需要增加默认线程堆栈大小（[`线程堆栈`](server-system-variables.html#sysvar_thread_stack)系统变量）。
