with recursive cte (n) as ( SELECT 1 UNION ALL SELECT n + 1 FROM cte WHERE n < 5 ) SELECT * FROM cte 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'recursive cte (n) as ( SELECT 1 UNION ALL SELECT n + 1 FROM cte WH' at line 1
时间: 2023-07-02 17:22:12 浏览: 192
mysql8 公用表表达式CTE的使用方法实例分析
这个错误提示表明你的 MySQL 版本不支持 with recursive 查询语句。with recursive 查询语句是在 MySQL 8.0.1 版本中引入的,如果你的 MySQL 版本低于 8.0.1,就无法使用 with recursive。
如果你的 MySQL 版本低于 8.0.1,你可以考虑使用其他方法来实现递归查询,例如使用存储过程或函数等。如果你的 MySQL 版本高于 8.0.1,可以检查你的查询语句是否存在其他语法错误,并根据错误提示进行修正。
在你的查询语句中,with recursive 子句的语法是正确的,但是在你的 MySQL 版本中不支持这种语法。可以使用以下命令检查你的 MySQL 版本:
```
SELECT VERSION();
```
如果你的 MySQL 版本低于 8.0.1,你需要升级你的 MySQL 版本才能使用 with recursive 查询语句。
阅读全文