首页 > 解决方案 > 使用视图进行递归 cte

问题描述

由于我使用的 MySQL 版本低于 8,因此我无法使用 CTE。

所以我试图通过视图制作 CTE 并且它有效。但递归 CTE 正在挑战我。

我想将下面的递归 CTE 转换为视图基本查询。

有办法吗?

WITH RECURSIVE cte_count(n)
AS (
    SELECT 1
    UNION ALL
    SELECT n + 1
    FROM cte_count
    WHERE n < 3
    )
SELECT n
FROM cte_count;

标签: mysqlsqlcommon-table-expression

解决方案


以下似乎可以满足您的要求:

create view v_cte_count as
    select 1 as n union all
    select 2 as n;

我认为在任何数据库中为此使用递归 CTE 没有任何优势。


推荐阅读