You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

请编写SQL查询获取Invoices表中金额计算异常的所有数据行

筛选金额计算不一致的发票数据

要找出Invoices表中TotalAmount与unitPrice * Quantity结果不匹配的数据行,直接用等值判断可能会因为浮点数精度问题出现误判,建议通过判断两者差值的绝对值是否大于一个极小阈值(比如0.001,可根据实际精度需求调整)来筛选:

SELECT *
FROM Invoices
WHERE ABS(TotalAmount - (unitPrice * Quantity)) > 0.001;

补充说明

  • 用ABS()计算差值绝对值,能避免正负差值的影响
  • 选0.001作为阈值是考虑到货币数据通常保留两位小数,这个值可以覆盖计算时的微小精度误差,你也可以根据业务实际精度要求调整
  • 若数据都是整数类型,或确定无浮点精度问题,也可以直接用TotalAmount != unitPrice * Quantity,但前者的兼容性更强

内容的提问来源于stack exchange,提问作者Robi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 13:14:54