我必須編寫一個查詢來計算每個客戶購物之間的平均天數(不使用子查詢)。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’, date ‘2011-02-01’),
(‘Bob Baker’, date ‘2011-02-01’),
(‘John Smith’, date ‘2011-02-02’),
(‘Bob Baker’, date ‘2011-02-02’),
(‘Bob Baker’, date ‘2011-02-03’),
(‘Bob Baker’, date ‘2011-02-04’),
(‘Bob Baker’, date ‘2011-02-05’),
(‘Bob Baker’, date ‘2011-02-06’),
(‘Bob Baker’, date ‘2011-02-07’),
(‘John Smith’, date ‘2011-02-07’),
(‘Alice Cooper’, date ‘2011-02-08’);
應該返回約翰史密斯等待1天則5天,因此他的平均爲3天。 Alice Cooper的(!)等了7天所以她 平均爲7鮑勃·貝克是每天亞軍所以他平均爲1
我做了這樣的事情
select distinct customer, avg (bought) as average from data;
,但它不工作。
任何幫助將不勝感激。
這必須是家庭作業,因爲我幾天前已經看到了這個確切的問題(和日差距) - 是嗎?如果它是 – RichardTheKiwi 2011-03-14 21:27:30
,我們通常會要求學術誠實和披露[SQL:查找每個跑步者之間的平均跑步天數。](http://stackoverflow.com/questions/5237141/sql-finding-the-每個跑步者的平均跑步次數) – RichardTheKiwi 2011-03-14 21:28:52
是的,是的。 我查了一下,但沒有發現任何東西。謝謝! – user640072 2011-03-14 21:34:23