mysql - 如何使用 SQL 合并基于日期的列
问题描述
如果我有以下 SQL my_table
:
╔══════╦═════════════════════╦═══════════╦═══════════════╗
║ id ║ date_recorded ║ new_entry ║ price_updated ║
╠══════╬═════════════════════╬═══════════╬═══════════════╣
║ ... ║ ... ║ ... ║ ... ║
║ 120 ║ 2020-02-13 18:53:49 ║ 15 ║ 13 ║
║ 121 ║ 2020-02-14 00:52:58 ║ 5 ║ 2 ║
║ 122 ║ 2020-02-14 06:53:38 ║ 1 ║ 4 ║
║ 123 ║ 2020-02-14 12:54:21 ║ 5 ║ 1 ║
║ 124 ║ 2020-02-14 18:54:50 ║ 9 ║ 9 ║
║ 125 ║ 2020-02-15 00:54:45 ║ 7 ║ 11 ║
║ ... ║ ... ║ ... ║ ... ║
╚══════╩═════════════════════╩═══════════╩═══════════════╝
问题:
我将如何编写一个 SQL 查询来查询其中的所有日期,my_table
以便输出只是日期,并且new_entry
&price_updated
列被合并到一行中,用于该date_recorded
列中的所有日期:
╔═════════════════╦═══════════╦═══════════════╗
║ date_recorded ║ new_entry ║ price_updated ║
╠═════════════════╬═══════════╬═══════════════╣
║ ... ║ ... ║ ... ║
║ 2020-02-13 ║ 15 ║ 13 ║
║ 2020-02-14 ║ 20 # ║ 16 * ║ #20 = 5 + 1 + 5 + 9 | *16 = 2 + 4 + 9 + 1
║ 2020-02-15 ║ 7 ║ 11 ║
║ ... ║ ... ║ ... ║
╚═════════════════╩═══════════╩═══════════════╝
解决方案
您可以只使用一个表达式,对 and 值进行GROUP BY
分组并计算and值:DATE
date_recorded
SUM
new_entry
price_updated
SELECT DATE(date_recorded) AS date_recorded,
SUM(new_entry) AS new_entry,
SUM(price_updated) AS price_updated
FROM my_table
GROUP BY DATE(date_recorded)
推荐阅读
- google-apps-script - 根据 B 列在下一个电子表格中复制 A 列 - Google Apps Script / Google Sheets
- reactjs - React Native 中的语法错误
- c++ - 分数背包边缘案例
- javascript - 使用jsp编辑上传的表单
- elasticsearch - API Gateway 执行日志的订阅过滤模式
- google-oauth - Auth0 关联帐号后无法获取用户信息
- c++ - 如果只有一个 QRadioButton,则作为 QCheckBox
- python - 有似乎只在我的计算机上影响我的问题,但是当我使用在线编译器时它可以工作
- python - 如何将一行代码变成多行?
- python - 使用 Pytorch 在同一 GPU 上的进程之间共享 GPU 内存