首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >索引列的key_ordinal =0是什么?

索引列的key_ordinal =0是什么?
EN

Stack Overflow用户
提问于 2016-06-17 13:10:19
回答 1查看 1.3K关注 0票数 3

在MSSQL中,我在分区表上有索引,对于这个表,当属性key_ordinal等于零时,我不理解它的含义。

要创建索引,分区方案是基于CUT_OFF的。

代码语言:javascript
复制
create table dbo.TESTTB (CUT_OFF datetime, number int) on partscheme(CUT_OFF);
create index TESTIX on dbo.TESTTB (number) on partscheme(CUT_OFF);

该查询显示key_ordinal的值。

代码语言:javascript
复制
select c.name as column_name, b.key_ordinal
from sys.indexes a
inner join sys.index_columns b 
    on  a.object_id = b.object_id and  a.index_id = b.index_id
inner join sys.all_columns c on b.object_id = c.object_id
    and b.column_id = c.column_id 
where a.name = 'TESTIX'

研究结果如下:

代码语言:javascript
复制
column_name key_ordinal
CUT_OFF     0
number      1

CUT_OFF

  • sys.index_columns中显示为key_ordinal = 0
  • Create Index语句中缺少
  • sp_help 'TESTTB'的索引信息中缺少

MSDN说:

0=不是键列,也不是XML索引、列存储索引或空间索引。

这意味着什么?什么是key_ordinal = 0

谢谢

EN

回答 1

Stack Overflow用户

发布于 2016-06-17 14:14:08

看起来它被隐式地添加到索引中到叶级别(比如INCLUDE列)。因此,它不是一个键列。下面是此索引的DBCC页面输出的截图。

根级:

叶级:

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37882445

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档