Dit zette me aan het lezen en het antwoord lijkt duidelijk onbevredigend, de vroegste SQL-referentie die ik heb kunnen vinden (ANSI 92 beschikbaar hier ) in sectie 4.4.1 Kenmerken van getallen stelt dat
Wat het aan Microsoft overlaat welke van de twee ze hebben gekozen om te implementeren voor T-SQL en ik neem aan dat ze omwille van de eenvoud hebben gekozen voor inkorting. Uit het wikipedia-artikel over afronding het lijkt erop dat dit destijds geen ongebruikelijke beslissing was.
Het is interessant om op te merken dat, volgens de documentatie die ik heb gevonden, alleen conversies naar gehele getallen truncatie veroorzaken, terwijl de andere afrondingen veroorzaken. Hoewel om de een of andere bizarre reden de conversie van money
naar integer
lijkt tegen de trend in te gaan omdat het mag worden afgerond.
From To Behaviour
numeric numeric Round
numeric int Truncate
numeric money Round
money int Round
money numeric Round
float int Truncate
float numeric Round
float datetime Round
datetime int Round
Tabel van hier .