Sql:日期的平均值

前端之家收集整理的这篇文章主要介绍了Sql:日期的平均值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我必须编写一个查询来计算每个客户购物之间的平均天数(不使用子查询).
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;

猜你在找的MsSQL相关文章