打印時的數量沒問題,但是當 sum 時就數字錯誤?

发布于 2022-09-11 15:00:27 字数 1220 浏览 14 评论 0

SELECT ss.quan FROM `stock` as ss
          JOIN `order_record` as r ON r.order_id = ss.order_id
          WHERE ss.from = 'c'
          AND r.from = 'c'
          AND r.status = 'ing'
          AND ss.prod_id = 120
          GROUP BY ss.order_id

這是從數據庫撈出的:
clipboard.png

這個數字是沒問題的
但是當我改成這樣

SELECT sum(ss.quan) as num FROM `stock` as ss
          JOIN `order_record` as r ON r.order_id = ss.order_id
          WHERE ss.from = 'c'
          AND r.from = 'c'
          AND r.status = 'ing'
          AND ss.prod_id = 120
          // GROUP BY ss.order_id 

數字變成了 32
clipboard.png

如果加入 GROUP BY ss.order_id 一樣是 32
這很明顯有五個不同的 order_id
clipboard.png

這可能各位會很難理解
我只是想問說明明一開始數字是對的
當 sum 後就不對了
當使用 sum 要注意什麼事情?不能這樣直接 sum ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

山田美奈子 2022-09-18 15:00:27

你在外面一层进行计算验证一下不就好了。。肯定是你的数据和你的逻辑是有问题的。如果数据不对的话。

苏辞 2022-09-18 15:00:27

估计是因为你的ss.order_id有重复的数据, 相关数据都贴上来看看

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文