Tengo que escribir una consulta para calcular el número promedio de días entre compras para cada cliente (sin usar subconsultas).Sql: promedio de las fechas
create table data {
customer varchar(20) not null,
bought date not null,
primary key (customer,bought)
}
Por ejemplo,
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’);
debería devolver que John Smith esperó 1 día después de 5 días, por lo que su promedio es de 3 días. Alice Cooper (!) Esperó 7 días por lo que su promedio es 7. Bob Baker es un corredor al día por lo que su promedio es de 1.
he hecho algo como esto
select distinct customer, avg (bought) as average from data;
pero no funciona .
Cualquier ayuda será muy apreciada.
Esto debe ser tarea, porque he visto esta pregunta (y lagunas) hace unos días, ¿no? Normalmente pedimos honestidad académica y divulgación si es – RichardTheKiwi
posible duplicado de [SQL: Encontrar la cantidad promedio de días entre ejecuciones para cada corredor.] (Http://stackoverflow.com/questions/5237141/sql-finding-the- average-number-of-days-between-runs-for-each-runners) – RichardTheKiwi
Lo es, sí. Lo busqué pero no encontré nada. ¡Gracias! – user640072