SQLServer FOR XML PATH使用案例 (eg:拼凑列值)、在 FROM 子句中将多个值指定为派生表

一、SQLServer FOR XML PATH使用案例 (eg:拼凑列值)

       本段转自:https://blog.csdn.net/Wikey_Zhang/article/details/77505233

有一张城市表:

SELECT DISTINCT province,
    STUFF
    (
        (
            SELECT ','+city 
            FROM #T_city B 
            WHERE B.province=A.province 
            FOR XML PATH('') 
        ),1,1,''
    )city 
FROM #T_city A
实现结果:

总结:

        基本语法就是 SELECT COLNUM FROM TABLE FOR XML PATH(''),将某一列的值在一行显示出来,如果PATH里面的参数不是空,将会形成XML标签的形式:SELECT province,city FROM #T_city FOR XML PATH('Title') 

二、在 FROM 子句中将多个值指定为派生表 

表值构造函数 (Transact-SQL) - SQL Server | Microsoft Learn

SELECT a, b FROM (VALUES (1, 2), (3, 4), (5, 6), (7, 8), (9, 10) ) AS MyTable(a, b);  
GO  
-- Used in an inner join to specify values to return.  
SELECT ProductID, a.Name, Color  
FROM Production.Product AS a  
INNER JOIN (VALUES ('Blade'), ('Crown Race'), ('AWC Logo Cap')) AS b(Name)   
ON a.Name = b.Name;  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值