Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

SQL Server 2008 - coluna computada HashBytes


A coluna hashbytes é criada como um VARBINARY(MAX) a menos que você diga especificamente que 20 bytes são suficientes:
alter table dbo.Softs 
  add TitleHash AS CAST(hashbytes('SHA1', [Title]) AS VARBINARY(20)) PERSISTED

Depois de fazer isso, você pode criar seu índice (único ou não) nessa coluna:
CREATE UNIQUE NONCLUSTERED INDEX [UIX_TitleHash] 
  ON [dbo].[Softs]([TitleHash] ASC)

Agora isso deve funcionar muito bem.