Sì, puoi impostare un valore predefinito, ma vuoi che la sintassi sia corretta:
[date] datetime default (case when datepart(hh, getdate()) = 24 then getdate() - 1 else getdate() end)
Tuttavia, non penso che dovresti avere un datetime
valore in un campo chiamato "data". Che ne dici di:
AsOfDate date default (case when datepart(hh, getdate()) = 24 then cast(getdate() - 1 as date) else cast(getdate() as date) end)