加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

Sql:日期的平均值

发布时间:2020-12-12 07:00:34 所属栏目:MsSql教程 来源:网络整理
导读:我必须编写一个查询来计算每个客户购物之间的平均天数(不使用子查询). create table data {customer varchar(20) not null,bought date not null,primary key (customer,bought)} 例如, insert into data (customer,bought)values (‘John Smith’,date ‘201
我必须编写一个查询来计算每个客户购物之间的平均天数(不使用子查询).
create table data {
customer varchar(20) not null,bought date not null,primary key (customer,bought)
}

例如,

insert into data (customer,bought)
values (‘John Smith’,date ‘2011-02-01’),(‘Alice Cooper’,(‘Bob Baker’,(‘John Smith’,date ‘2011-02-02’),date ‘2011-02-03’),date ‘2011-02-04’),date ‘2011-02-05’),date ‘2011-02-06’),date ‘2011-02-07’),date ‘2011-02-08’);

应该回答约翰史密斯等了1天然后5天,所以他的平均值是3天. Alice Cooper(!)等了7天所以她
平均是7.鲍勃贝克是每日跑步者,所以他的平均值是1.

我做过类似的事

select distinct customer,avg (bought) as average from data;

但它不起作用.

任何帮助将不胜感激.

解决方法

PostgreSQL版本的链接答案
select customer,(max(bought) - min(bought)) / (count(bought)-1)
from data
group by customer;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读