MySQL 中 `with xxx AS ()` 的等效语法是什么

What's the equivalent syntax in MySQL for `with xxx AS ()`

在 MSSQL 中,我有一个类似这样的查询:

WITH temp AS (
SELECT
    *
FROM
  xx.xxxx
)

但是 MySQL 语法不支持 WITH temp AS (),我想知道 MySQL Workbench 中的等效语法应该是什么?谢谢

语法错误截图如下:

如果您有 MySQL 5.x 并且您需要调整包含 CTE 的查询,则转换

WITH cte AS (cte query text)
SELECT ... 
FROM cte
...

SELECT ... 
FROM (cte query text) cte
...

如果有多个 CTE,则执行从后一个 CTE 到前一个 CTE 的准确替换(您可能需要使用某些 CTE 子查询文本的多个副本 - 这是一种常态)。