sql - 如何通过计算日期的天数来聚合数据?
问题描述
我从 Athena 检索到以下数据:
book_id cat_id books date year month day
1 12 50 2020-05-08 2020 05 08
但是,我想使用以下公式获取 avg_books 而不是书籍:
SUM(books)/COUNT(DISTINCT(DAY([Date])
我是 SQL 的初学者,所以我做不到。谁能帮助我?
解决方案
如何计算日期?
select sum(books) / count(distinct date)
或者,如果您愿意:
select sum(books) / count(distinct year * 10000 + month * 100 + day)
当然,您可以使用:
select sum(books) / count(distinct extract(day from date))
但这没有任何意义。
推荐阅读
- javascript - 如何使用 window.postmessage 与父窗口通信
- flutter - Dart中Function类型参数的默认值
- perl - Parallel::ForkManager 给出 - 子进程 STDIN 不是真正的系统错误
- docker - 从 DockerHub 拉取时,.NetCore Api Docker Image 不工作
- javascript - 使用 Enzyme mount() 访问嵌套组件
- python - Flask URL 重定向,其中参数是 URL 的一部分
- python - 我正在尝试使用正则表达式获取以 < 开头并以 > 结尾的子字符串并删除它们以创建一个新字符串
- node.js - How do you update a thumbnailPhoto in Active Directory using NodeJS and ldapjs?
- database - Unable to install Sample OE schema in Pluggable DB in Oracle 19c
- java - 实现接口并使用类对象而不是接口对象