mysql - Mysql - 获取2个表之间的平均时间差异
问题描述
我有这两张桌子:
customer
id
name
created_at
和 :
action
id
customer_id
type
created_at
我想要和之间的平均时间差customer.created_at
,action.created_at
其中action.type = "call0"
和动作是第一个条目(动作可能有很多type = "call0"
)
现在,我有这个查询:
SELECT AVG(TIME_TO_SEC(timediff(action.created_at, customer.created_at)) / 60) AS diff
FROM action
WHERE action.type = "call0"
JOIN customer ON action.customer_id = customer.id
GROUP BY customer.id
ORDER BY action.created_at ASC
不知道为什么,这个查询返回了几行——每行都用于操作条目。
如何返回整个平均计算?
解决方案
如果您想要总结果,请不要按 customer.id 分组
SELECT AVG(TIME_TO_SEC(timediff(action.created_at, customer.created_at)) / 60) AS diff
FROM action
JOIN customer ON action.customer_id = customer.id
WHERE action.type = "call0"
否则,如果您想要每个 customer.id 的平均值,请尝试显示相应的 customer.id
SELECT customer.id, AVG(TIME_TO_SEC(timediff(action.created_at, customer.created_at)) /60) AS diff
FROM action
JOIN customer ON action.customer_id = customer.id
WHERE action.type = "call0"
GROUP BY customer.id
ORDER BY action.created_at ASC
推荐阅读
- go - 使用“go get”下载二进制文件而不将它们添加到 go.mod
- php - 如何使用 Drupal 站点上的服务帐户验证 google-indexing
- python - 使用python创建新的现有文件夹,其标识符如folder_1、folder_2等。
- python - 如何使用 Azure Speech to Text 和 Python SDK 获取字级时间戳?
- python - python - presto - 时间戳和十进制(38,18)作为字符串返回?
- node.js - type: Schema.Types.ObjectId, returns “ReferenceError: Schema is not defined
- excel - 将公式的一部分从相对参考转换为绝对参考
- ruby-on-rails - Creating 2 Models in Controller Action With Transaction - Rails 4
- java - RecyclerView notifyItemMoved() duplicates the moved view
- install4j - Install4J 8 not creating JRE bundles