mysql - 获取 MySQL 中字符串字段的 SUM
问题描述
我在下面有这个示例 MySQL 表:
date |name |invoice | quantity |
-------------------------------
2012-10-02 01:00|aaaa |101 | 1
2012-10-02 01:30|aaaa |102 | 2
2012-10-02 01:45|aaaa |102 | 3
我想GROUP BY
约会并得到类似的结果:
date | name |invoice | freq_name | freq_quantity |
--------------------------------------------------
2012-10-02| aaaa |101 |1 | 1
2012-10-02| aaaa |102 |2 | 5
我试图执行如下聚合:
SELECT
date,
name,
invoice,
SUM(quantity) AS freq_quantity,
SUM(name) AS freq_name
FROM table
GROUP BY date, name, invoice
freq_quantity
字段正确,而字符串freq_name
字段不正确。
解决方案
你不需要sum
名字,你需要count
他们:
SELECT
date,
name,
invoice,
SUM(quantity) AS freq_quantity,
COUNT(*) AS freq_name -- Here!
FROM table
GROUP BY date, name, invoice
推荐阅读
- android - 有没有办法让每个人都可以访问 firestore 数据库,但只能通过应用程序?
- python - Python 类可下标但不可迭代
- git - emacs 不备份 git repo 中的文件
- recursion - Preorder traversal without recursion
- ansible - 可变模块字段
- json - How to create multiple instance of backendAddressPools, frontendports in Application Gateways through ARM template
- javascript - 制作响应式可折叠导航栏。我很难让 Javascript 在点击时工作
- google-sheets - Is there a way to filter a pivot query to remove the blank column
- react-native - 将 react-native 升级到 0.60、将组件复制到新项目或更改 package.json 版本的最佳方法?
- javascript - 二维数组在 JavaScript 中的意外结果