我有一个需要计划指南的查询,但我很难设置它。
从过程缓存中查询以下...
(@state nvarchar(14),
@jobName nvarchar(18),
@jobGroup nvarchar(28),
@oldState nvarchar(6))
UPDATE JOB_TRIGGERS
SET TRIGGER_STATE = @state
WHERE JOB_NAME = @jobName
AND JOB_GROUP = @jobGroup
AND TRIGGER_STATE = @oldState
SQL Server 选择执行聚簇索引扫描与非聚簇索引查找。这个更新语句和表上的某个选择语句偶尔会出现死锁问题。我明白为什么 SQL 在表上选择聚集索引扫描....Rows < 100 和 PageCount < 25。
该表有大量活动,并且由于它是第 3 方产品,我无法修改查询并提供索引提示。使用非聚集索引的查询成本更高,但我相信它会根据测试提高并发性......
我需要告诉它使用下面的非聚集索引
WITH (INDEX (ix_jobname_jobgroup_triggerstate))
帮助设置这个将不胜感激..