如何从表中只获取自动计算列?

时间:2016-07-27 12:28:40

标签: sql sql-server tsql sql-server-2014

我有这个查询

SELECT  COLUMN_NAME 
FROM [INFORMATION_SCHEMA.COLUMNS]
WHERE TABLE_NAME = @TableName 
      AND TABLE_SCHEMA = @TableSchema;

事情是这个查询返回所有表的列,但我想要的只是返回非自动计算列。 任何建议。

2 个答案:

答案 0 :(得分:3)

使用sys.columns代替,它有一个名为is_computed

的列

答案 1 :(得分:1)

INFORMATION_SCHEMA.COLUMNS没有该信息。您可以使用sys.columns

select  *
from    sys.columns
where   object_id   = object_id('table_name')
and     is_computed = 0