我必须编写一个查询来计算每个客户购物之间的平均天数(不使用子查询).
create table data {
customer varchar(20) not null,
bought date not null,
primary key (customer,bought)
}
Run Code Online (Sandbox Code Playgroud)
例如,
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’);
Run Code Online (Sandbox Code Playgroud)
应该回答约翰史密斯等了1天然后5天,所以他的平均值是3天.Alice Cooper(!)等了7天,所以她的平均值是7.Bob Baker是每日跑步者,所以他的平均值是1.
我做过这样的事情
select distinct customer, avg (bought) …Run Code Online (Sandbox Code Playgroud) 我必须与一些本科生和研究生一起创建课程,然后使用方法getPostgraduates()从课程中提取所有以"Ismael Bento"为主管的研究生,并使用类Notifier向他们发送消息(打印文本和接受者).然而,没有任何东西被打印出来......我的猜测是我的getPostgraduates()方法有问题.
这是主要方法:
package students;
import java.util.*;
public class ProgrammingTest {
public static void main (String[] args){
Academic rr = new Academic("Ricardo Rodriguez");
Academic ib = new Academic("Ismael Bento");
Set<Student> students = new HashSet<Student>();
Undergraduate ug1 = new Undergraduate("gg4", "Greg","gg4@", rr);
Undergraduate ug2 = new Undergraduate("pr3", "Pete","pr3@", ib);
Postgraduate pg1 = new Postgraduate("te2", "Ted", "te2@", rr);
Postgraduate pg2 = new Postgraduate("yj34", "Yao", "yj34@", ib);
Postgraduate pg3 = new Postgraduate("jj8", "Jack", "jj8@", ib);
students.add(ug1);
students.add(ug2);
students.add(pg1);
students.add(pg2);
students.add(pg3);
Course c1 = …Run Code Online (Sandbox Code Playgroud)