with 表达式

【 TiDB 使用环境】生产环境
【 TiDB 版本】6.1.0
with aa as ( xxx )
select * from aa ;

select * from ( xxx ) ;
执行过程是一样的吗

explain 看看执行计划。

不会报建一个临时表吧,例如 create temporary table aa (xxxx)

不是,方便阅读用的吧。

with老版本一堆bug 慎用

6.1.0的版本,有问题吗

你从6.1.1版本后的更新说明里面搜cte 看看有没有bug fix

嗯,我看看

请参考官方文档,

https://docs.pingcap.com/zh/tidb/stable/sql-statement-with#with

如果真是遇到什么bug,欢迎来论坛“吐槽”

最好自己用explain测试一下

WITH语句是一种在SQL中常用的语法,用于创建临时表或视图,以便在后续的查询中使用。它可以简化复杂查询的编写,并提高查询性能。

CTE 的功能没啥bug了,6.1.7 或者 6.5.x 之后的版本会比较合适,大部分的都修复了

参考这些修复


with方式在tidb还不是特别支持。最好用7以上的版本,你这个没测试过。不过根据我之前在oracle测试 这中是一样的

执行计划不一样,低版本慎用

还是改成 子查询可能比较稳妥,这是o 迁移到tidb?

看看执行计划