2020-04-12

作业
1.新建一个数据库。
在这里插入图片描述
2.创建学生表,成绩表。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3.查询"01"课程比"02"课程成绩高的学生的信息及课程分数,查询同时存在"01"课程和"02"课程的情况。
在这里插入图片描述
4.select a.* , b.score 课程01的分数 ,c.score 课程02的分数 from Student a , SC b , SC c
where a.SID = b.SID and a.SID = c.SID and b.CID = ‘01’ and c.CID = ‘02’ and b.score < c.score在这里插入图片描述
5.查询平均成绩大于等于60分的同学的学生编号和学生姓名和平均成绩
select a.SID , a.Sname , cast(avg(b.score) as decimal(18,2)) avg_scorefrom Student a , sc bwhere a.SID = b.SIDgroup by a.SID , a.Snamehaving cast(avg(b.score) as decimal(18,2)) >= 60order by a.SID在这里插入图片描述
6.查询所有同学的学生编号、学生姓名、选课总数、所有课程的总成绩查询所有有成绩的SQL。select a.SID 学生编号 , a.Sname 学生姓名 , count(b.CID) 选课总数, sum(score) 所有课程的总成绩from Student a , SC bwhere a.SID = b.SIDgroup by a.SID,a.Snameorder by a.SID在这里插入图片描述
7.查询和01号的同学学习的课程完全相同的其他同学的信息
在这里插入图片描述
8.查询课程名称为数学,且分数低于60的学生姓名和分数在这里插入图片描述
9查询至少有一门课与学号为01的同学所学相同的同学的信息在这里插入图片描述
10.每门课被选修的学生数在这里插入图片描述实验中经常遇到的问题
1 SQL语句执行不成功,重复出现问题。

总结:实验中遇到的问题
1 输入命令时要注意符号的应用,应该在英文输入法下进行书写,区分中文和英文输入法下的语句差错。

好的,以下是构造程序的代码: ```python class AccountBook: def __init__(self): self.records = [] self.income = 0 self.expense = 0 self.balance = 0 def add_record(self, category, detail, amount, date): record = [len(self.records)+1, category, detail, amount, date] self.records.append(record) if category == '收入': self.income += amount else: self.expense += amount self.balance = self.income - self.expense def print_records(self): for record in self.records: print(record) print('总收入:', self.income) print('总支出:', self.expense) print('结余:', self.balance) book = AccountBook() book.add_record('收入', '生活费', 3000, '2020-04-01') book.add_record('支出', '午餐', 12.5, '2020-04-30') book.add_record('支出', '买书', 25, '2020-04-30') book.add_record('支出', '晚餐', 16, '2020-04-30') book.add_record('收入', '生活费', 3500, '2020-05-01') book.add_record('支出', '峨嵋山旅游', 500, '2020-05-01') book.print_records() ``` 运行程序后,输出结果如下: ``` [1, '收入', '生活费', 3000, '2020-04-01'] [2, '支出', '午餐', 12.5, '2020-04-30'] [3, '支出', '买书', 25, '2020-04-30'] [4, '支出', '晚餐', 16, '2020-04-30'] [5, '收入', '生活费', 3500, '2020-05-01'] [6, '支出', '峨嵋山旅游', 500, '2020-05-01'] 总收入: 6500 总支出: 553.5 结余: 5946.5 ``` 上述程序中,我们定义了一个 `AccountBook` 类,其中包含一个 `records` 属性,用于存储记帐记录;以及 `income`、`expense` 和 `balance` 属性,分别用于记录总收入、总支出和结余。 在 `AccountBook` 类中,我们还定义了一个 `add_record` 方法,用于添加新的记帐记录。这个方法接受四个参数:`category`(类别)、`detail`(明细)、`amount`(金额)和 `date`(日期)。在添加新的记帐记录时,我们先将其存储到 `records` 属性中,然后根据类别更新总收入和总支出,最后计算结余。 最后,我们还定义了一个 `print_records` 方法,用于将所有的记帐记录打印出来,并输出总收入、总支出和结余。 在程序的最后,我们创建一个 `AccountBook` 对象,并添加了一些测试数据。最后调用 `print_records` 方法,将所有的记帐记录打印出来,并输出总收入、总支出和结余。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值