【问题标题】:MySQL 4 SUM if two rows have the same value on a given column如果两行在给定列上具有相同的值,则 MySQL 4 SUM
【发布时间】:2013-10-31 13:12:05
【问题描述】:

我使用的是(旧)MySQL 4.0 数据库,当两行的特定列具有相同的值时,我需要对数量求和。

例子,

假设我有这些列: doc_nr |客户名称 | article_id |数量

在插入数据库时​​,它们被分成不同的行,每行的数量为1(复杂的服务量控制后台给上层管理)

我想要做的是,对于相同的 article_id 和相同的 doc_nr(这意味着它是针对同一个客户),如果 article_id 相同,我想将数量输出为它们的总和。

那么,对于订购了 2 件商品的客户,然后将其作为数量 1 的两个单独的行插入,我如何再次输出数量 2?

【问题讨论】:

  • 4.0 可以追溯到 2002 年。为什么不坚持使用 FORTRAN?

标签: mysql sql mysql4


【解决方案1】:

您可以使用GROUP BY 查询:

SELECT doc_nr, client_name, article_id, SUM(qty) AS qty
FROM yourtable
GROUP BY doc_nr, client_name, article_id

如果 qty 始终为 1,则您可以只使用 COUNT(*) 而不是 SUM(qty) 来计算分组行数。

【讨论】:

  • 是的。如果 qty 始终为 1,则 qty 是多余的。
猜你喜欢
  • 1970-01-01
  • 2023-03-23
  • 2022-01-11
  • 2022-08-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-14
相关资源
最近更新 更多