感觉很初级嘛 和我们上课时候的都差不多
其实自己也可以写啊 比如把自己班或公司人员各项数据统计一下或干脆虚构
然后自己决定列个表或抽了显示什么的
SQL关键就是灵活运用 各种语句怎么搭配以及最简便的方法
再扔几个题
14、已有表student、grade和makeup ,分别存放学生信息、成绩和补考成绩,相应外键约束已建为RESTRICT, 字段结构如下:
student :id(学号,char 12),name(姓名,char 8)
grade:id(学号,char 12),course(课程名,char 30),grade(成绩,decimal)。
Makeup:id(学号,char 12),course(课程名,char 30),grade(成绩,decimal),degree(补考次数,int)。
(1)、王丽同学新入学,学号为“20050101”,“高等数学”成绩为78,请用sql语句插入相应记录。(注意插入记录表的顺序)
insert student(id, name) values ("20050101", "王丽");
insert grade(id, course, grade) values ("20050101", "高等数学", 78);
insert makeup(id, course, grade, degree) values ("20050101", "高等数学", 78, 0);
(2)、续上次高等数学考试后,王丽同学又完成了“大学英语”考试,第一次成绩为50,第n次补考成绩为65(n不知)。请用sql语句插入补考记录。
count = select degree from makeup where id = "20050101" and course = "大学英语";
insert makeup(id, course, grade, degree) values ("20050101", "大学英语", 65, count+1);
(3)、已有基于外部数据源的数据窗口dw_grade,内部字段为course(课程名,char 30),grade(成绩,decimal),请用POWERSCRIPT语句取出王丽同学的各科有效成绩并放入dw_grade。(注意王丽同学可能又进行了其它科目的考试)
15、用POWERSCRIPT实现库存物资的ABC分类法。已有库存资金表kczj(wzbm物资编码,je 资金占用),分析后将结果记录到库存分类表kcfl (lb 类别, wzbm 物资编码)中, 其中A物资占用资金超过75%,B物资占用资金超过20%,C物资占用资金小于5%。(要考虑数据库出错处理)
foxpro程序,供参考:
set talk off
public hao,kind,cash,rate
kind=""
cash=0
rate=0
total=0.00
use wuzi.dbf
sum je to total
select 物资编号,金额 from wuzi order by 金额
scan
hao=物资编号
cash=cash+金额
rate=cash/total
do case
case rate<0.05
kind="C"
case rate>=0.05 and rate<0.25
kind="B"
otherwise
kind="A"
endcase
insert into kind(物资编号,类别) values(hao,kind)
endscan
close all
设关系模式SCG(S#,C#,grade)中S#为学生学号,C#为课程号,grade为某学号学生
学某号课程的考试成绩。今要查询每门课程的平均成绩,且要求查询的结果按平
均成绩升序排列,则用SQL查询语言是____。
select did,dname,(select count(eid)from emp having count(eid)>3 ) from dept where did in(select eid from emp having count(eid)>3)