为什么需要CTE

不能在同一查询中两次引用派生表,那样的话,查询会根据派生表的引用次数计算两次或多次,这会引发严重的性能问题.使用CTE后,子查询只会计算一次.

 

派生表在查询语句中只能引用一次,而CTE可以引用多次

CTE可以引用自身(递归)

CTE可以引用其他CTE

CTE相比排查表可读性更高,CTE在语句开头定义临时结果集而不是像派生表一样嵌入到查询语句中

https://zhuanlan.zhihu.com/p/483614359

https://www.modb.pro/db/73747

https://blog.csdn.net/frostlulu/article/details/128000237  

https://blog.csdn.net/weixin_44231544/article/details/125974323