我正在使用MsSql server 2008,
假设我的表发票包含列名NetAmount,其类型为十进制(20,4)
及其数据
Netamount, InvoiceID
---------------------
12.1234, 1
20.0120, 2
98.2300, 3
我希望通过查询来检索只获得在小数点后四位的值不等于零的发票,在我的情况下,此查询应该只获得ID = 1且金额= 12.1234作为其第四个十进制数的第一张发票是4不是零
由于
答案 0 :(得分:4)
一种技巧:
WHERE
(NetAmount * 10000) % 10 <> 0
另:
WHERE
FLOOR(NetAmount * 1000) <> NetAmount * 1000
和
WHERE
ROUND(NetAmount, 3) <> NetAmount