`
molaoye
  • 浏览: 18293 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

如何查找索引对应字段

    博客分类:
  • SQL
阅读更多

首先了解一下sql server系统表:
sys.indexes 索引
sys.objects 对象(表...)
sys.columns 字段
sys.index_columns 索引_字段
sys.tables 自定义表
【具体信息不多解释】

 

已知有employeeinfo表,字段名为userid是唯一键(索引名为IX_employeeinfo)
问题1,如何查找索引对应字段?
select * from sys.columns where column_id in(
select column_id from sys.index_columns where index_id in(
select index_id from sys.indexes where object_id in(
select object_id from sys.tables where name='employeeinfo'
) and name='IX_employeeinfo'
) and object_id=object_id('employeeinfo')
) and object_id=object_id('employeeinfo')

反过来,如何查找字段对应索引?
select * from sys.indexes where index_id in(
select index_id from sys.index_columns where column_id in(
select column_id from sys.columns where object_id in(
select object_id from sys.tables where name='employeeinfo'
) and name='userid'
) and object_id=object_id('employeeinfo')
) and object_id=object_id('employeeinfo')


注:
object_id('employeeinfo')--获取对象id

分享到:
评论

相关推荐

    SuperMap Objects .NET 创建字段索引

    例如,如果经常需要根据某地区的名称来查找对应的地理信息,为这个“地区名称”字段创建索引将会大大提高查询效率。 创建字段索引的过程通常包括以下步骤: 1. **初始化工作环境**:首先,你需要导入SuperMap ...

    70 针对主键之外的字段建立的二级索引,又是如何运作的?l.pdf

    所以,还需要通过“回表”操作,即使用找到的主键值回到聚簇索引中去查找对应的完整数据行。这个过程再次使用二分查找,最终获取到完整的数据行。 如果需要基于多个字段建立索引,比如name和age字段,那么就会创建...

    sqlserver 2008 查找缺失索引

    例如,如果发现某个表的查询频繁使用了某几个字段进行过滤,并且这些字段目前没有对应的索引,则可以考虑创建一个合适的索引以提高查询效率。 ### 二、识别并处理无效索引 除了查找缺失索引之外,识别并处理那些...

    数据库用索引为什么比不用索引更快

    但如果有了目录,我们就可以直接翻到对应页码,大大节省了查找时间。同样,数据库索引创建了一个指向数据行的指针列表,这些指针按照索引字段的值排序,使得数据库能快速定位到目标数据。 数据库索引主要有以下几种...

    oracle实现多字段匹配一个关键字查询(本人亲测,没毛病)

    这种需求在很多场景下都非常常见,比如在CRM系统中搜索客户信息、在文档管理系统中查找文档等。本文将详细介绍如何利用Oracle SQL语句实现多字段匹配一个关键字查询,并提供几种不同的实现方法。 #### 一、使用字符...

    73 通过一步一图来深入理解联合索引查询原理以及全值匹配规则l.pdf

    1. 首先到索引页中进行二分查找,找到第一个字段(班级名称)对应的值所在的索引页。 2. 直接定位到对应的数据页。 3. 在数据页内部,利用二分查找方法,根据第二个字段(学生姓名)和第三个字段(科目名称)依次...

    行业-70 针对主键之外的字段建立的二级索引,又是如何运作的?l.rar

    这意味着,查询时,数据库系统首先会在二级索引中查找指定的字段值,然后根据找到的主键值去主索引中获取完整的记录信息。 二级索引对于查询优化有以下几点优势: 1. **快速查询**:通过二级索引,数据库可以直接...

    SQL SERVE根据值查找所在的表和字段

    ### SQL Server根据值查找所在的表和字段 在SQL Server中,有时我们需要找出特定值存在于哪个表的哪个字段中。这通常发生在数据维护、数据分析或数据迁移等场景中,特别是当数据库中有大量表时,手动检查变得非常...

    MySQL-数据库-索引详解

    单列索引可以是普通索引也可以是惟一性索引、全文索引,只要保证索引只对应一个字段即可。 #### 多列索引 在表的多个字段创建一个索引。该索引指向创建时对应的多个字段,可以通过这几个字段进行查询。只有查询...

    ES之_source字段详解

    1. **重建索引**:当需要重建索引时,可以利用_source字段快速地重新创建索引,而无需再次获取原始数据。 2. **Highlighting**:在进行全文搜索时,如果需要高亮显示匹配关键词的部分,那么_source字段就显得尤为...

    Oracle如何对CLOB行字段来执行全文检索

    * CREATETEMPORARY 过程:创建一个临时的 BLOB 或 CLOB 和其对应的索引在用户的默认临时表空间中。 * ERASE 过程:擦除 LOB 的全部或部分内容。 * FILECLOSE 过程:关闭文件。 * FILECLOSEALL 过程:关闭所有之前...

    数据结构课程设计(应用索引文件和查找算法的学生信息管理程序)

    索引通常包含每个记录的关键字段及其对应的物理位置。在本项目中,学生信息可能被组织成索引文件,索引字段可能是学生的ID或其他唯一标识符,这样就可以快速查找到特定学生的信息。 **折半查找**: 折半查找,又称...

    MySQL分区字段列有必要再单独建索引吗?

    而索引则是为了加速对特定列的查找,通过构建一种数据结构(如B树),使得数据库可以快速定位到所需的数据行。 在上述示例中,我们创建了一个名为`effect_new`的表,该表按照`create_time`字段按月进行范围分区。...

    深入浅出理解索引结构

    在创建索引时,我们需要考虑索引的类型以及选择哪些字段作为索引键。一般来说,对于频繁查询的字段,可以考虑创建聚集索引或非聚集索引;而对于经常用于排序的字段,创建聚集索引通常更为合适。此外,还应考虑到索引...

    数据库索引

    相反,非聚集索引的叶子节点除了包含键值外,还会包含一个“书签”(Bookmark),用于指示InnoDB存储引擎如何找到与索引对应的行数据。具体来说,InnoDB存储引擎会先遍历辅助索引,通过叶子级别的指针获取指向主键...

    实验十一索引查找的实现.pdf

    首先在索引表中寻找对应部门的索引项,然后在找到的子表中顺序查找具有匹配职工号的记录。如果查找成功,返回记录在主表中的位置,否则返回-1。 3. `InsertIndexList`函数:该函数处理记录的插入操作。首先在索引表...

    mysql的索引优化

    这意味着当查询条件匹配时,MySQL可以直接通过索引找到对应记录的具体位置,进而快速返回结果。 #### 四、索引类型及其创建方法 MySQL提供了多种索引类型,以满足不同的应用场景需求: 1. **普通索引**:这是最...

    mysql 索引与执行计划

    5. **非聚簇索引**:与聚簇索引相对应,它们将索引和数据分开存储。 ##### 1.1.3 基础语法 MySQL提供了多种方法来创建、查看和删除索引: - **查看索引**: ```sql SHOW INDEX FROM table_name \G ``` - **...

    HBase二级索引

    例如,当数据被写入时,我们不仅仅写入主表,同时还会将对应字段数据及其rowkey写入到索引表中。当需要查询时,就可以直接通过索引表中的字段值找到对应的rowkey,再通过rowkey去主表中获取完整数据。 2. 利用第三...

    索引文件txt

    - **复合索引**:构建复合索引可以在单个索引中包含多个字段,这样可以减少查询时的索引扫描次数,从而提高查询效率。 - **索引结构调整**:对索引结构进行调整也是优化索引的一种方式,例如,可以通过调整索引的...

Global site tag (gtag.js) - Google Analytics