There are several ways to do this.
For example, you can first generate a datetime from GetDate() to smalldatetime , aa:
CAST(GetDate() AS smalldatetime)
To be clear, this will be around the generated seconds up (or down) to the next minute, depending on the value of the current second.
<sub> EDIT: sub>
Alternatively, you can truncate the SQL Server datetime for you to be "clean" (READ: no rounding, since the value is previously truncated), converting to smalldatetime :
CAST(DateAdd(minute, DateDiff(minute, 0, GetDate()), 0) AS smalldatetime)
source share