我有一个 MariaDB 数据库。我正在运行With查询。
当我运行以下查询时,它给我一个错误,即 t1 表不存在
with t1 as (select 't1'),
block1 as (
with inner1 as (
select * from t1
)
select * from inner1
),
block2 as (
with b2inner1 as(
select * from block1
),
b2inner2 as(
select * from block1
)
select * from b2inner2
)
select * from block2;
但是,如果我删除 block2 则查询有效。
with t1 as (select 't1'),
block1 as (
with inner1 as (
select * from t1
)
select * from inner1
)
select * from block1;
我的问题是我没有在 block2 子查询中使用 t1 那么为什么查询会给出错误。
我认为发生错误是因为我在 block2 查询中选择了 block1 的结果两次。小提琴手