sql server 查询INDDEMANDF表数据的同时,查询到的字段名显示字段的注释
时间: 2024-09-11 19:07:14 浏览: 31
在SQL Server中,要查询表中字段的注释通常是指获取列的描述信息,这些信息在系统表中存储,比如`sys.columns`和`sys.extended_properties`。但是,标准的SQL查询语句中并没有直接显示注释的选项。如果你事先已经为字段添加了描述(即注释),可以通过查询`sys.extended_properties`视图来获取这些注释。
以下是一个SQL查询的示例,它可以展示表中每个字段的名称以及对应的注释(如果有的话):
```sql
SELECT
col.name AS '字段名',
obj.name AS '表名',
prop.value AS '字段注释'
FROM sys.columns col
INNER JOIN sys.objects obj ON col.object_id = obj.object_id
LEFT JOIN sys.extended_properties prop ON col.object_id = prop.major_id AND col.column_id = prop.minor_id AND prop.class = 1 AND prop.name = 'MS_Description'
WHERE obj.name = 'INDDEMANDF'
ORDER BY col.column_id;
```
在这个查询中,我们使用了`sys.columns`来获取列的信息,`sys.objects`来获取对象(即表)的信息,`sys.extended_properties`来获取扩展属性(即注释)。我们通过`LEFT JOIN`关联这些表,并且只选择那些`prop.name`为`MS_Description`的记录,这是SQL Server用来存储注释的标准名称。`WHERE`子句限定了只查询名为`INDDEMANDF`的表。
请注意,这个方法依赖于已经存在字段注释。如果表中的字段没有添加任何注释,那么`prop.value`将为`NULL`。