Sql server 什么是XML路径?

Sql server 什么是XML路径?,sql-server,sql-server-2014,Sql Server,Sql Server 2014,有人能更详细地解释一下XML路径(“”)、类型(“”、'NVARCHAR(max)')的实际SELECT(STUFF-SELECT…)是什么吗? 据我所知: XmlPath(“”)到将列数据连接到一行中。 Stuff用于删除字符串连接后的第一个“,”。 那么TYPE).value('.','NVARCHAR(max)用于什么呢 那么TYPE).value('.','NVARCHAR(max)用于什么呢 XML路径的基础知识您可以在SO的许多问题/答案中找到(例如,或) 我将重点介绍类型指令。请考

有人能更详细地解释一下XML路径(“”)、类型(“”、'NVARCHAR(max)')的实际
SELECT(STUFF-SELECT…)是什么吗?

据我所知:
XmlPath(“”)
将列数据连接到一行中。
Stuff
用于删除字符串连接后的第一个“,”。

那么
TYPE).value('.','NVARCHAR(max)
用于什么呢

那么
TYPE).value('.','NVARCHAR(max)
用于什么呢

XML路径的
基础知识
您可以在SO的许多问题/答案中找到(例如,或)

我将重点介绍
类型
指令。请考虑下面的T-SQL语句,该语句将派生表中的字符串“代码> Dt<代码>:

SELECT
    [text()]=dt.x+';'
FROM
    (
        VALUES('text > blabla'),
              ('text < blabla'),
              ('f&m')
    ) AS dt(x)
FOR XML
    PATH('');

你会看到,
可能重复的@KenY-N为什么它可以在我的数据库上很好地执行?我只是想问一下并获得正确的信息,因为我是新的初学者。@Close投票者:不知道你是否注意到,“可能重复”中没有一个答案解释在使用FOR XML PATH连接字符串时使用TYPE指令的原因。你们应该先看一下复制件,然后再按关闭按钮。在我看来,许多反对票也有点夸张。看一看
SELECT 
    (
        SELECT
            [text()]=dt.x+';'
        FROM
            (
                VALUES('text > blabla'),
                      ('text < blabla'),
                      ('f&m')
            ) AS dt(x)
        FOR XML
            PATH(''), TYPE
    ).value('.','NVARCHAR(MAX)');