COL_NAME (Transact-SQL)

Applies to: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

This function returns the name of a table column, based on the table identification number and column identification number values of that table column.

Transact-SQL syntax conventions

Syntax

COL_NAME ( table_id , column_id )  

Note

To view Transact-SQL syntax for SQL Server 2014 (12.x) and earlier versions, see Previous versions documentation.

Arguments

table_id
The identification number of the table containing that column. The table_id argument has an int data type.

column_id
The identification number of the column. The column_id argument has an int data type.

Return types

sysname

Exceptions

Returns NULL on error, or if a caller does not have the correct permission to view the object.

In SQL Server, a user can only view the metadata of securables that the user owns, or on which the user has been granted permission. This means that metadata-emitting, built-in functions such as COL_NAME might return NULL, if the user does not have correct permissions on the object. See Metadata Visibility Configuration for more information.

Remarks

The table_id and column_id parameters together produce a column name string.

See OBJECT_ID (Transact-SQL) for more information about obtaining table and column identification numbers.

Examples

This example returns the name of the first column in a sample Employee table.

-- Uses AdventureWorks  
  
SELECT COL_NAME(OBJECT_ID('dbo.FactResellerSales'), 1) AS FirstColumnName,  
COL_NAME(OBJECT_ID('dbo.FactResellerSales'), 2) AS SecondColumnName;  

Here is the result set.

ColumnName          
------------   
BusinessEntityID  

See also

Expressions (Transact-SQL)
Metadata Functions (Transact-SQL)
COLUMNPROPERTY (Transact-SQL)
COL_LENGTH (Transact-SQL)