每个月份的发生额都比101科目多的科目请用SQL语句实现:从TestDB数据表中查询出所有月份的发生额都比101科目相应月份的发生额高的科目。请注意:TestDB中有很多科目,都有1-12月份的发生额。 AccID:科目代码,Occmonth:发生额月份,DebitOccur:发生额。 数据库名:JcyAudit,数据集:Select * from TestDB准备数据的sql代码:drop table if exists TestDB;create table TestDB(id int primary key auto_increment,AccID varchar(20),Occmonth date,DebitOccur bigint);insert into TestDB values(null,'101','1988-1-1',100),(null,'101','1988-2-1',110),(null,'101','1988-3-1',120),(null,'101','1988-4-1',100),(null,'101','1988-5-1',100),(null,'101','1988-6-1',100),(null,'101','1988-7-1',100),(null,'101','1988-8-1',100);--复制上面的数据,故意把第一个月份的发生额数字改小一点insert into TestDB values(null,'102','1988-1-1',90),(null,'102','1988-2-1',110),(null,'102','1988-3-1',120),(null,'102','1988-4-1',100),(null,'102','1988-5-1',100),(null,'102','1988-6-1',100),(null,'102','1988-7-1',100),(null,'102','1988-8-1',100);--复制最上面的数据,故意把所有发生额数字改大一点insert into TestDB values(null,'103','1988-1-1',150),(null,'103','1988-2-1',160),(null,'103','1988-3-1',180),(null,'103','1988-4-1',120),(null,'103','1988-5-1',120),(null,'103','1988-6-1',120),(null,'103','1988-7-1',120),(null,'103','1988-8-1',120);--复制最上面的数据,故意把所有发生额数字改大一点insert into TestDB values(null,'104','1988-1-1',130),(null,'104','1988-2-1',130),(null,'104','1988-3-1',140),(null,'104','1988-4-1',150),(null,'104','1988-5-1',160),(null,'104','1988-6-1',170),(null,'104','1988-7-1',180),(null,'104','1988-8-1',140);--复制最上面的数据,故意把第二个月份的发生额数字改小一点insert into TestDB values(null,'105','1988-1-1',100),(null,'105','1988-2-1',80),(null,'105','1988-3-1',120),(null,'105','1988-4-1',100),(null,'105','1988-5-1',100),(null,'105','1988-6-1',100),(null,'105','1988-7-1',100),(null,'105','1988-8-1',100);
查看答案
统计每年每月的信息year month amount1991 1 1.11991 2 1.21991 3 1.31991 4 1.41992 1 2.11992 2 2.21992 3 2.31992 4 2.4查成这样一个结果:year m1 m2 m3 m41991 1.1 1.2 1.3 1.41992 2.1 2.2 2.3 2.4准备sql语句:drop table if exists sales;create table sales(id int auto_increment primary key,year varchar(10),month varchar(10),amount float(2,1));insert into sales values(null,'1991','1',1.1),(null,'1991','2',1.2),(null,'1991','3',1.3),(null,'1991','4',1.4),(null,'1992','1',2.1),(null,'1992','2',2.2),(null,'1992','3',2.3),(null,'1992','4',2.4);
显示文章标题,发帖人、最后回复时间表:id,title,postuser,postdate,parentid准备sql语句:drop table if exists articles;create table articles(id int auto_increment primary key,title varchar(50),postuser varchar(10),postdate datetime,parentid int references articles(id));insert into articles values(null,'第一条','张三','1998-10-10 12:32:32',null),(null,'第二条','张三','1998-10-10 12:34:32',null),(null,'第一条回复1','李四','1998-10-10 12:35:32',1),(null,'第二条回复1','李四','1998-10-10 12:36:32',2),(null,'第一条回复2','王五','1998-10-10 12:37:32',1),(null,'第一条回复3','李四','1998-10-10 12:38:32',1),(null,'第二条回复2','李四','1998-10-10 12:39:32',2),(null,'第一条回复4','王五','1998-10-10 12:39:40',1);
删除除了id号不同,其他都相同的学生冗余信息学生表 如下:id号 学号 姓名 课程编号 课程名称 分数1 2005001 张三 0001 数学 692 2005002 李四 0001 数学 893 2005001 张三 0001 数学 69准备数据:create table student2(id int auto_increment primary key,code varchar(20),name varchar(20));insert into student2 values(null,'2005001','张三'),(null,'2005002','李四'),(null,'2005001','张三');
航空网的几个航班查询题:实验环境:create table city(cityID int auto_increment primary key,cityName varchar(20));create table flight (flightID int auto_increment primary key,StartCityID int references city(cityID),endCityID int references city(cityID),StartTime timestamp);//航班本来应该没有日期部分才好,但是下面的题目当中涉及到了日期insert into city values(null,'北京'),(null,'上海'),(null,'广州');insert into flight values(null,1,2,'9:37:23'),(null,1,3,'9:37:23'),(null,1,2,'10:37:23'),(null,2,3,'10:37:23');(1) 查询起飞城市是北京的所有航班,按到达城市的名字排序(2)查询北京到上海的所有航班纪录(起飞城市,到达城市,起飞时间,航班号)(3)查询具体某一天(2005-5-8)的北京到上海的的航班次数