日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

sqlserver?合并列數據的實現_MsSql

作者:我是個假程序員 ? 更新時間: 2023-03-02 編程語言

sql server 遞歸查詢樹型結構某節點的所有上級節點,并且把這些所有上級節點多行拼接為一行,即合并列數據

with eps_root(pk_eps, pk_parent, eps_code, eps_name) as
(
    SELECT
         pk_eps, pk_parent, eps_code, eps_name
     FROM pm_eps
     where enablestate = 2
       and pk_eps = '1001A11000000003P62E'
    union all
    SELECT
        e.pk_eps, e.pk_parent, e.eps_code, e.eps_name
    FROM pm_eps e
          inner join eps_root r on e.pk_eps = r.pk_parent
    where e.enablestate = 2
)

select distinct 
	eps_code = stuff((select '/' + convert(nvarchar(500), eps_code) from (select distinct eps_code from eps_root) r1 for xml path('')), 1, 1, ''),
	--此次需要使用eps_code排序,不然中文的會錯亂順序
	eps_name = stuff((select '/' + eps_name from (select top 99.99 PERCENT eps_name from eps_root order by eps_code) r2 for xml path('')), 1, 1, '')
from eps_root

執行sql,如下圖效果:

在這里插入圖片描述

原文鏈接:https://blog.csdn.net/u010741112/article/details/128568479

欄目分類
最近更新