MySQL期中考试上机试题
- 创建数据库,名称为考生的学号;(5分)
- 创建数据表customer(客户)、deposite(存款)、bank(银行),表结构如下:(15分)
(用desc 查看表结构,然后截图即可,截图每个表下方)
customer的表结构
属性名称 | 类型与长度 | 中文含义 | 备注 |
c_id | char(6) | 客户标识 | 主键,非空 |
name | varchar(30) | 客户姓名 | 非空 |
location | varchar(30) | 工作地点 |
|
salary | decimal(8,2) | 工资 |
|
bank的表结构
属性名称 | 类型与长度 | 中文含义 | 备注 |
b_id | char(5) | 银行标识 | 主键,非空 |
bank_name | char(30) | 银行名次 | 非空 |
deposite的表结构
属性名称 | 类型与长度 | 中文含义 | 备注 |
d_id | int | 存款流水号 | 主键,非空,自增 |
c_id | char(6) | 客户标识 | 外键,关联customer表的c_id |
b_id | char(5) | 银行标识 | 外键,关联bank表的b_id |
dep _date | date | 存入日期 |
|
dep_type | enum(1,3,5) | 存款期限 | 枚举型,1,3,5分别代表1年期、3年期和5年期 |
amount | decimal(8,2) | 存款金额 |
|
- 录入数据如下:(10分)(用select语句查询,然后把结果截图到每个表格下方)
customer的数据如下,注意最后一条记录用你的学号和你的姓名代替
c_id | name | location | salary |
101001 | 孙杨 | 广州 | 1234 |
101002 | 郭海 | 南京 | 3526 |
101003 | 卢江 | 苏州 | 6892 |
101004 | 郭惠 | 济南 | 3492 |
你的学号 | 你的姓名 | 北京 | 6324 |
bank的数据如下:
b_id | bank_name |
B0001 | 工商银行 |
B0002 | 建设银行 |
B0003 | 中国银行 |
B0004 | 农业银行 |
deposite的数据如下:
d_id | c_id | b_id | dep_date | dep_type | amount |
1 | 101001 | B0001 | 2011-04-05 | 3 | 42526 |
2 | 101002 | B0003 | 2012-07-15 | 5 | 66500 |
3 | 101003 | B0002 | 2010-11-24 | 1 | 42366 |
4 | 101004 | B0004 | 2008-03-31 | 1 | 62362 |
5 | 101001 | B0003 | 2002-02-07 | 3 | 56346 |
6 | 101002 | B0001 | 2004-09-23 | 3 | 353626 |
7 | 101003 | B0004 | 2003-12-14 | 5 | 36236 |
8 | 101004 | B0002 | 2007-04-21 | 5 | 26267 |
9 | 101001 | B0002 | 2011-02-11 | 1 | 435456 |
10 | 101002 | B0004 | 2012-05-13 | 1 | 234626 |
11 | 101003 | B0003 | 2001-01-24 | 5 | 26243 |
12 | 101004 | B0001 | 2009-08-23 | 3 | 45671 |
查询部分:
1、查询customer表的顾客姓名,薪水信息 (6分)
2、查询bank表中银行的个数(6分)
3、查询deposite表的存款信息第2到第6条记录信息 (6分)
4、查询“孙杨”的存款的信息(存了几个银行,每个银行的存款额) (8分)
5、查询每个顾客的存款总额,并按从高到低排序 (8分)
6、查询每个银行的存款总额,平均额度。 (8分)
7、查询存款期限为3年期的顾客信息 (8分)
视图部分:
1、创建视图bank_total,对deposite表进行统计,按银行统计存款总数,显示为b_id,total. (10分)
2、创建视图show_deposite,对deposite、customer、bank进行查询,查询条件为location在广州、苏州、济南的客户,存款在300000至500000之间的存款记录,显示客户姓名name、银行名称bank_name、存款金额amount. (10分)