Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在SQL中,';as';什么意思?_Sql_Sql Server - Fatal编程技术网

在SQL中,';as';什么意思?

在SQL中,';as';什么意思?,sql,sql-server,Sql,Sql Server,我正在SQL中执行一些XML查询,为了获得多个同级节点的属性,我需要执行以下查询: select C.value('@attribute[1]', 'varchar(30)') from tblData cross apply XmlFieldL.nodes('/Data/Children') as T(C) 默认情况下,[1]只给出第一项,因此交叉应用程序绕过该项,并为每个子节点提供一个@属性的列表。很酷,很好用 我的问题是T(C)的语法是什么?乍一看,它看起

我正在SQL中执行一些XML查询,为了获得多个同级节点的属性,我需要执行以下查询:

select 
    C.value('@attribute[1]', 'varchar(30)') 
from 
    tblData
cross apply 
    XmlFieldL.nodes('/Data/Children') as T(C)
默认情况下,
[1]
只给出第一项,因此交叉应用程序绕过该项,并为每个子节点提供一个
@属性的列表。很酷,很好用

我的问题是
T(C)
的语法是什么?乍一看,它看起来像某种函数,或者某种分组。我引用C,但为什么T部分是必要的?语法是什么意思


以供参考,并更好地描述它。我只是想确切地理解我在这里做什么。

T
是派生表的别名


C
是从
/Data/Children
节点分解的列名。

基本上,
.nodes()
调用返回一个“伪表”,其中每个匹配的XML片段都有一列

这就是
T
(用于伪表)和
C
(该伪表中的列)所指的内容,这里有很好的解释: