适用于:SQL Server
Azure SQL 数据库
Azure SQL 托管实例
Azure Synapse Analytics
Analytics Platform System (PDW)
此函数根据表列的表标识号和列标识号值返回该表列的名称。
语法
COL_NAME ( table_id , column_id )
参数
table_id
包含该列的表的标识号。 table_id 自变量具有一个 int 数据类型。
column_id
列的标识号。 column_id 自变量具有一个 int 数据类型。
返回类型
sysname
例外
返回 NULL 错误,或者调用方没有查看对象的正确权限。
用户只能查看用户拥有的安全对象的元数据,也可以查看向其授予权限的安全对象。 这意味着,如果用户对对象没有正确的权限,则发出元数据的内置函数(例如 COL_NAME 可能会返回 NULL)。 有关详细信息,请参阅 元数据可见性配置。
备注
table_id 和 column_id 参数共同产生一个列名称字符串。
有关获取表和列标识号的详细信息,请参阅 OBJECT_ID。
示例
本文中的代码示例使用 AdventureWorks2022 或 AdventureWorksDW2022 示例数据库,可以从 Microsoft SQL Server 示例和社区项目 主页下载该数据库。
答: 返回表中前两列的名称
此示例返回表中前两列 Person.Person 的名称。
USE AdventureWorks2022;
GO
SELECT COL_NAME(OBJECT_ID('Person.Person'), 1) AS FirstColumnName,
COL_NAME(OBJECT_ID('Person.Person'), 2) AS SecondColumnName;
结果集如下。
FirstColumnName SecondColumnName
----------------- -----------------
BusinessEntityID PersonType