Anda dapat membulatkan tanggal saat ini menjadi 30 menit seperti:
select dateadd(mi, datediff(mi,0,getdate())/30*30, 0)
Penjelasan:ini membutuhkan jumlah menit sejak tanggal 0:
datediff(mi,0,getdate())
Kemudian dibulatkan menjadi kelipatan 30 dengan membagi dan mengalikannya dengan 30:
datediff(mi,0,getdate())/30*30
Hasilnya ditambahkan kembali ke tanggal 0 untuk menemukan blok 30 menit terakhir
dateadd(mi, datediff(mi,0,getdate())/30*30, 0)
Ini dapat disesuaikan dengan mudah selama 60 menit. :)