Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CREATE PROCEDURE {databaseOwner}[{objectQualifier}avtSearchBoost_RemoveQueueDuplicates]
- AS
- BEGIN
- IF NOT EXISTS (SELECT * FROM {databaseOwner}[{objectQualifier}avtSearchBoost_IndexingQueue])
- RETURN
- DELETE table1
- FROM {databaseOwner}[{objectQualifier}avtSearchBoost_IndexingQueue] AS table1
- WHERE (table1.[Due] < ( select max([Due]) from {databaseOwner}[{objectQualifier}avtSearchBoost_IndexingQueue] where [ItemId] = table1.[ItemId] AND [InstanceId] = table1.[InstanceId] AND (CharIndex('remove',[Action]) = 1)))
- AND (CharIndex('remove',table1.[Action]) = 1);
- DELETE table1
- FROM {databaseOwner}[{objectQualifier}avtSearchBoost_IndexingQueue] AS table1
- WHERE (table1.[Due] < ( select max([Due]) from {databaseOwner}[{objectQualifier}avtSearchBoost_IndexingQueue] where [ItemId] = table1.[ItemId] AND [InstanceId] = table1.[InstanceId] AND (CharIndex('add',[Action]) = 1)))
- AND (CharIndex('add',table1.[Action]) = 1);
- WITH CTE AS(
- SELECT [Action]
- ,[ItemId]
- ,[InstanceId]
- ,[Due]
- ,RN = ROW_NUMBER()OVER(PARTITION BY [Action]
- ,[ItemId]
- ,[InstanceId]
- ,[Due] ORDER BY [Due])
- FROM {databaseOwner}[{objectQualifier}avtSearchBoost_IndexingQueue]
- )
- DELETE FROM CTE WHERE RN > 1
- END
- GO
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement