Argument 1:3 AS DECIMAL(19, 8)
Argument 2:27 AS DECIMAL (18, 0) -- standaard precisie is 18, standaard schaal is 0 (BIGINT is geconverteerd naar DECIMAL vanwege typevoorrang)
p1 = 19
p2 = 18
s1 = 8
s2 = 0
Laten we bijvoorbeeld 1 berekenen:
precision: (19 - 8 + 0) + MAX(6, 8 + 18 + 1) = 38
scale: MAX(6, 8 + 18 + 1) = 27
Voor al je voorbeelden krijg je altijd max. 27 schaal.
0.111111111111111111111111111 (27)
11.111111111111111111111111111 (27)
0.005488934750153684025643277 (27)
Het hele deel bevat alleen de noodzakelijke cijfers (1), (2), (1).
Voor mij is alles perfect geldig.
Dit antwoord is gebaseerd op het werk van @Paul White
van Decimal Truncation In division
.