【问题标题】:MySQL statement constructionMySQL语句构造
【发布时间】:2021-11-10 08:17:45
【问题描述】:

我在 MySql 数据库中有一个表

ID USER_ID BYTES IP Minutes
1 abc 1293847777 1.0.001.111 3

我想对多列进行计算。

  • BYTES 我想除以一个整数
  • 我要统计的IP
  • IP 我想要不同的计数
  • 我想要平均的分钟数

然后按 id 和 userid 分组

提前谢谢你

【问题讨论】:

  • 请提供少量数据作为样本和预期输出。字节除以整数?
  • 使用 GROUP BY 和根据聚合函数。

标签: mysql sql mysql-workbench average calculated-columns


【解决方案1】:

请为您的示例数据尝试此操作。使用 SUM() 对字节求和,然后除以整数。如果在 bytes 列中没有使用聚合函数,则要么在 group by 子句中使用此列,要么会出现错误。

-- MySQL
SELECT id, user_id
     , SUM(bytes)/8 bytes
     , COUNT(ip) ip
     , COUNT(DISTINCT ip) dis_ip
     , AVG(minutes) minutes
FROM test
GROUP BY id, user_id

请从https://dbfiddle.uk/?rdbms=mysql_8.0&fiddle=0275186699b9a5528005a70860952a42查看

如果表有多个记录,请检查此 url https://dbfiddle.uk/?rdbms=mysql_8.0&fiddle=7e6828e1cd11b1320ebf12a0777468c2

【讨论】:

  • @JB_ 请检查这个答案,让我知道有关此的任何查询。
猜你喜欢
  • 1970-01-01
  • 2018-12-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-12-14
  • 1970-01-01
  • 2023-03-03
  • 2014-02-10
相关资源
最近更新 更多