首页 > 数据库 >SQl Server添加索引

SQl Server添加索引

时间:2023-05-31 11:26:20浏览次数:39  
标签:QUEUEDETAIL OFF DF InsertDateTime Server 索引 SQl GO DESC

USE DB
GO

IF NOT EXISTS(SELECT Name FROM SysColumns WHERE id=Object_Id('[HIS_QUEUE]') AND Name = 'InsertDateTime')
BEGIN   
   ALTER TABLE HIS_QUEUE ADD InsertDateTime  datetime DEFAULT (CONVERT([date],CONVERT([varchar](100),getdate(),(23)),(23)))     
END
GO
IF NOT EXISTS(SELECT Name FROM SysColumns WHERE id=Object_Id('[QUEUEDETAIL]') AND Name = 'InsertDateTime')
BEGIN
   ALTER TABLE QUEUEDETAIL ADD InsertDateTime  datetime DEFAULT (CONVERT([date],CONVERT([varchar](100),getdate(),(23)),(23)))  
   
END
GO
update QUEUEDETAIL set InsertDateTime=(CONVERT([datetime], QUEUEDETAIL.APPOINTDATE  ,(20)))
update HIS_QUEUE set InsertDateTime=(CONVERT([datetime], HIS_QUEUE.[InsertDate]  ,(20))) 
GO

/****** Object:  Index [DF_HISQUEUE_InsertDateTime]    Script Date: 2023-05-31 10:21:54 ******/

IF EXISTS (SELECT name FROM sys.indexes  
            WHERE name = N'DF_HISQUEUE_InsertDateTime')   
DROP INDEX [DF_HISQUEUE_InsertDateTime] ON [dbo].[HIS_QUEUE] WITH ( ONLINE = OFF )
GO 

/****** Object:  Index [DF_HISQUEUE_InsertDateTime]    Script Date: 2023-05-31 10:21:54 ******/
CREATE CLUSTERED INDEX [DF_HISQUEUE_InsertDateTime] ON [dbo].[HIS_QUEUE]
(
	InsertDateTime desc,
	[APPOINTSDATE] DESC,
	[APPKIND] DESC,
	[HISEXAMNO] DESC,
	[HISID] DESC,
	[NAME] DESC,
	[QUEUENAME] DESC,
	[EXECUTEDEPT] DESC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
GO

/****** Object:  Index [DF_QUEUEDETAIL_InsertDateTime]    Script Date: 2023-05-31 10:34:41 ******/
IF EXISTS (SELECT name FROM sys.indexes  
            WHERE name = N'DF_QUEUEDETAIL_InsertDateTime')   
DROP INDEX [DF_QUEUEDETAIL_InsertDateTime] ON [dbo].[QUEUEDETAIL] WITH ( ONLINE = OFF )
GO 

/****** Object:  Index [DF_QUEUEDETAIL_InsertDateTime]    Script Date: 2023-05-31 10:34:41 ******/
CREATE CLUSTERED INDEX [DF_QUEUEDETAIL_InsertDateTime] ON [dbo].[QUEUEDETAIL]
(
	InsertDateTime desc,
	[APPOINTDATE] DESC,
	[APPKIND] DESC,
	[HISEXAMNO] DESC,
	[QUEUENAME] DESC,
	DIRECTION DESC,
	--CheckItemRemark DESC,
	PARTOFCHECK DESC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
GO

  

 

注:主键列默认为聚簇索引,聚簇索引只能有一个,非聚簇索引可以有多个

一般建议在对表创建索引时,使用日期类型的列创建且创建为降序。

 

 

  

标签:QUEUEDETAIL,OFF,DF,InsertDateTime,Server,索引,SQl,GO,DESC
From: https://www.cnblogs.com/YYkun/p/17445531.html

相关文章

  • mysql数据库自动删除
    关于早上发现数据库丢失,留下了一份文档 检查了下发现是命令的问题 由于使用了这条命令,导致后门被开了,真是血泪的教训。修改远程登录权限的话还是使用updateuser表来修改。......
  • kettle 日志表migrate SQL
    日志kettle.properties配置文件#trans日志(转换)KETTLE_TRANS_LOG_DB=10.15.30.168KETTLE_TRANS_LOG_TABLE=r_log_trans#步骤日志表(步骤)KETTLE_STEP_LOG_DB=localhostKETTLE_STEP_LOG_TABLE=r_log_trans_step#trans性能日志(运行)KETTLE_TRANS_PERFORMANCE_LOG_DB=l......
  • SqlServer2014管理工具创建用户并设置对应访问权限
     需求:创建一个具有访问权限登录的用户,用以访问指定数据库, 对其放开指定数据库的指定表  一、用户名创建以及设置1、首先使用管理员账号登陆到数据库,【安全性】-【登录名】-右键【新建登录名】 【服务器角色】页签中:用于向用户授予服务器范围内的安全特权 【用户映......
  • java同步mysql的数据到PostgreSQL时报错ERROR: invalid byte sequence for encoding "
    最近,同事在做一个功能,通过java程序将mysql中的一张表的数据同步到pgsql中,在同步过程中,插入到pgsql中出现了如下错误:`###Errorupdatingdatabase.Cause:org.postgresql.util.PSQLException:ERROR:invalidbytesequenceforencoding"UTF8":0x00在位置:unnamedportalpa......
  • SQL优化之EXPLAIN执行计划
    前言从今天开始本系列文章就带各位小伙伴学习数据库技术。数据库技术是Java开发中必不可少的一部分知识内容。也是非常重要的技术。本系列教程由浅入深,全面讲解数据库体系。非常适合零基础的小伙伴来学习。全文大约【1965】字,不说废话,只讲可以让你学到技术、明白原理的纯干......
  • 关于mysql 创建索引报错 1071 specified key was too long ;max key length is 3027
    另一种张表也是相同的字段创建索引却能成功,在网上查了一些资料。后来发现是两张表字段都用的varchar类型,不过能成功建索引的表设置的长度是50,而不能成功的表里设置的255,修改字符长度就能成功建索引了。关于varchar(50)和varchar(255)的区别:https://dba.stackexchange.com/questio......
  • sql解释执行顺序
    SQL查询语句执行的先后顺序 查询语句执行顺序查询中⽤到的关键词主要包含六个,并且他们的顺序依次为select--from--where--groupby--having--orderby。其中select和from是必须的,其他关键词是可选的,这六个关键词的执⾏顺序与sql语句的书写顺序并不是⼀样的,而是按照下⾯的顺......
  • wukong引擎源码分析之索引——part 1 倒排列表本质是有序数组存储
    searcher.IndexDocument(0,types.DocumentIndexData{Content:"此次百度收购将成中国互联网最大并购"})engine.go中的源码实现://将文档加入索引////输入参数://docId标识文档编号,必须唯一//data见DocumentIndexData注释////注意://1.这个函数是线程安全......
  • sql注入学习笔记
    sql注入基础的sql语句注入1'or'1'='1'# #or语句1'orderby3# #order语句1'unionselect1,2,3# #联合查询1'and(selectextractvalue(1,concat('~',(selectdatabase())))) #报错注入1'andif(length(database())>1,sleep......
  • 关于MySQL的一些优化(单表访问)
    以此表为例CREATETABLE`single_table`(`id`intNOTNULLAUTO_INCREMENT,`key1`varchar(100)CHARACTERSETutf8mb4COLLATEutf8mb4_0900_ai_ciNULLDEFAULTNULL,`key2`intNULLDEFAULTNULL,`key3`varchar(100)CHARACTERSETutf8mb4COLLATEutf8mb......