Son zamanlarda SQL Server 2005 için yazılmış oldukça eski saklı yordamlar bakıyordum ve anlamadığım bir şey fark ettim. Bir tür işlev çağrısı gibi görünüyor.
Bir örnek:
SELECT o.name, o.type_desc, o.create_date
FROM sys.objects o
WHERE o.create_date < {fn Now()} -1;
Bu işlem, 24 saat öncesine kadar sys.objectsolan tüm satırları görüntüler create_date.
Bu sorgu için yürütme planını görüntülersem, bunun Veritabanı Altyapısı {fn Now()}ile değiştirildiğini görüyorum getdate():
SELECT [o].[name],[o].[type_desc],[o].[create_date]
FROM [sys].[objects] [o]
WHERE [o].[create_date]<(getdate()-@1)
Açıkçası, kullanmak {fn Now()}çok daha yaygındır GetDate(). Biri için ben belgesiz olduğu için veba gibi bu sözdiziminden kaçınacağım.