sql server 2005中使用with实现递归的方法(sql server 2005使用教程)深度揭秘

随心笔谈2年前发布 admin
182 0 0

文章摘要

这篇文章主要介绍了一种利用PostgreSQL的CTE(常见表表达式)和临时表来优化递归查询的方法,以提高查询效率。文章通过代码示例展示了如何通过WITH和AS关键字构建CTE,以及如何通过内联查询(UNION ALL)递归地获取节点数据,并将结果存储在临时表中。这种方法能够有效减少重复计算,从而提升性能。文章的核心内容是通过巧妙地使用CTE和临时表,优化PostgreSQL的递归查询性能。

WITH fw_requestion_note_temp(old_apply_id) AS ( –取根节点放入临时表

SELECT old_apply_id FROM fw_requestion_note –WHERE old_apply_id=’e741470e-8b5c-4f91-9b03-c7474d103aef’

–根据已取到的数据递归取其字节点的数据

 UNION ALL SELECT fw.old_apply_id FROM fw_requestion_note fw

 INNER JOIN fw_requestion_note_temp temp ON fw.apply_id=temp.old_apply_id ) SELECT old_apply_id FROM fw_requestion_note_temp

© 版权声明

相关文章