博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQL 递归使用
阅读量:5088 次
发布时间:2019-06-13

本文共 1396 字,大约阅读时间需要 4 分钟。

直接贴代码吧= =

WITH CTE AS    (    -->Begin 一个定位点成员     SELECT COUNTRYORDERID,HSNAME, COUNTRYNAME,PARENTORDERID,   IMPORTCURRENTSUMAMOUNT,   IMPORTCONTRASTSUMAMOUNTPERCENTAGE,   IMPORTCURRENTSUMAMOUNTPERCENTAGE,   CAST(COUNTRYNAME AS NVARCHAR(max)) AS TE,0 AS Levle FROM #TempTableDetail    WHERE PARENTORDERID IS NULL AND HSNAME IN (SELECT HSNAME FROM #TempTableData)  -->End    UNION ALL    -->Begin一个递归成员     SELECT #TempTableDetail.COUNTRYORDERID, #TempTableDetail.HSNAME, #TempTableDetail.COUNTRYNAME,#TempTableDetail.PARENTORDERID,   #TempTableDetail.IMPORTCURRENTSUMAMOUNT,   #TempTableDetail.IMPORTCONTRASTSUMAMOUNTPERCENTAGE,   #TempTableDetail.IMPORTCURRENTSUMAMOUNTPERCENTAGE,   CAST(REPLICATE('  ',LEN(CTE.TE))+#TempTableDetail.COUNTRYNAME AS NVARCHAR(MAX)) AS TE,Levle+1 AS Levle      FROM #TempTableDetail INNER JOIN CTE      ON #TempTableDetail.PARENTORDERID=CTE.COUNTRYORDERID      --group by #TempTableDetail.HSNAME    WHERE #TempTableDetail.HSNAME IN (SELECT HSNAME FROM #TempTableData)  -->End    )  INSERT INTO #TempResult(COUNTRYORDERID,HSNAME,COUNTRYNAME,IMPORTCONTRASTSUMAMOUNTPERCENTAGE,IMPORTCURRENTSUMAMOUNTPERCENTAGE,IMPORTCURRENTSUMAMOUNT)  SELECT DISTINCT COUNTRYORDERID, HSNAME,TE,IMPORTCONTRASTSUMAMOUNTPERCENTAGE,   IMPORTCURRENTSUMAMOUNTPERCENTAGE,IMPORTCURRENTSUMAMOUNT FROM CTE ORDER BY HSNAME,COUNTRYORDERID;
效果:

转载于:https://www.cnblogs.com/wzjhoutai/p/7086973.html

你可能感兴趣的文章
字符串占位符的使用
查看>>
mina 通讯框架
查看>>
MySQL分区表的管理~1
查看>>
vue表格业务
查看>>
maven 配置说明
查看>>
js接收网页参数
查看>>
Elasticsearch安装
查看>>
linux之查看端口占用
查看>>
[原创]浅谈互联网金融测试平台规划
查看>>
什么是网关及网关作用(转)
查看>>
skymvc网站测试之mysql数据生成
查看>>
静态内存、动态内存与堆栈
查看>>
Asp.Net Core WebApi 和Asp.Net WebApi上传文件
查看>>
如何在应用图标上显示未读消息
查看>>
android脚步---如何看log之程序停止运行,和UI线程和非UI线程之间切换
查看>>
循环结构反思
查看>>
『TensorFlow』SSD源码学习_其一:论文及开源项目文档介绍
查看>>
EasyUI的时间控件禁止输入
查看>>
js 判断浏览器类型
查看>>
Easyui后台管理角色权限控制
查看>>