sql >> Base de Datos >  >> RDS >> Sqlserver

¿Cómo crear una restricción única solo en la parte de fecha de una fecha y hora?

Bueno, en SQL Server 2008, hay un nuevo tipo de datos llamado "FECHA":puede usar esa columna y crear un índice sobre eso.

Por supuesto, también podría agregar una columna calculada del tipo "FECHA" a su tabla y simplemente completar la parte de la fecha de la columna DATETIME en esa columna calculada, hacerla PERSISTENTE e indexarla. ¡Debería funcionar bien!

Algo así:

ALTER TABLE dbo.Entries
   ADD DateOnly as CAST(CompositionDate AS DATE) PERSISTED

CREATE UNIQUE INDEX UX_Entries ON Entries(DateOnly, Slug)

Marc