网上有很多可能,但它们都不适用于我。 我在我的查询中使用'ROUND'将小数舍入为2位,但当值为2.5时,函数显示2.5而不是2.50
有什么想法解决这个问题吗?请用您的解决方案重写我的查询,我会立即尝试。
ps:我在vb.net中使用此查询来填充数据集。
SELECT
p.ProductNaam, f.Aantal, p.Prijs, f.BasisBedrag, f.Korting,
ROUND(f.BasisBedrag * (f.Korting / 100.00), 2) AS Expr1005,
ROUND(f.BasisBedrag - f.BasisBedrag * (f.Korting / 100), 2) AS Expr1006,
p.Btw,
ROUND((f.BasisBedrag - f.BasisBedrag * (f.Korting / 100.0)) * (p.Btw / 100.0), 2) AS Expr1008,
f.TotaalBedrag, p.ProductID
FROM
(tblFactuur f
INNER JOIN
tblProducten p ON f.ProductID = p.ProductID)
WHERE
(f.FactuurID = '2014001')
答案 0 :(得分:0)
如果您正在使用Access,我认为格式化功能可能是您正在寻找的功能。 “标准”选项将为您提供2位小数。
SELECT p.ProductNaam,
f.Aantal, p.Prijs, f.BasisBedrag, f.Korting,
Format(ROUND(f.BasisBedrag * (f.Korting / 100.00), 2), "Standard") AS Expr1005,
Format(ROUND(f.BasisBedrag - f.BasisBedrag * (f.Korting / 100), 2), "Standard") AS Expr1006,
p.Btw,
Format(ROUND((f.BasisBedrag - f.BasisBedrag * (f.Korting / 100.0)) * (p.Btw / 100.0), 2), "Standard") AS Expr1008,
f.TotaalBedrag, p.ProductID
FROM (tblFactuur f INNER JOIN
tblProducten p ON f.ProductID = p.ProductID)
WHERE (f.FactuurID = '2014001')