mysql的题目_mysql经典例题
MYSQL上机题
1. 使用sql语句创建数据库,名称为CustomDB
2. 创建数据表customer(客户)、deposite(存款)、bank(银行),表结构如下:(10分)
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
存入日期
amount
decimal(8,2)
存款金额
3、录入数据:
customer的数据如下
c_id
name
location
salary
101001
孙杨
广州
1234
101002
郭海
南京
3526
101003
卢江
苏州
6892
101004
郭惠
济南
3492
bank的数据如下:
b_id
bank_name
B0001
工商银行
B0002
建设银行
B0003
中国银行
B0004
农业银行
deposite的数据如下:
d_id
c_id
b_id
dep_date
amount
1
101001
B0001
2011-04-05
42526
2
101002
B0003
2012-07-15
66500
3
101003
B0002
2010-11-24
42366
4
101004
B0004
2008-03-31
62362
5
101001
B0003
2002-02-07
56346
6
101002
B0001
2004-09-23
353626
7
101003
B0004
2003-12-14
36236
8
101004
B0002
2007-04-21
26267
9
101001
B0002
2011-02-11
435456
10
101002
B0004
2012-05-13
234626
11
101003
B0003
2001-01-24
26243
12
101004
B0001
2009-08-23
45671
4、修改数据(sql语句实现):
1.将数据表deposite中孙杨的存款金额加10000
2.将数据表deposite中所属账户为工商银行并且存入日期为2011-04-05的人员的存款金额加1000
3.将数据表deposite中郭海的银行标识改为建设银行
5、查询数据(sql语句实现):
1.查询孙杨的存款信息(显示信息:客户ID,客户姓名,银行名称,存款金额)
2.查询日期为2011-04-05这一天进行过存款的客户ID,客户姓名,银行名称,存款金额
3.查询郭海在工商银行的存款信息(显示信息:客户ID,客户姓名,银行标识,银行名称,存款日期,存款金额)
4.查询工商银行存款大于等于一万的客户姓名(使用表链接和子查询两种方式实现)
5.查询在农业银行存款前五名的客户存款信息(显示信息:客户姓名,银行名称,存款金额)
6.查询姓“卢”的客户的存款信息(显示信息:客户姓名,银行名称,存款金额)
详细答案如下:
/*创建顾客表*/
create table if not exists customer(
c_id char(6) primary key,
name varchar(30)not null,
location varchar(30),
salary decimal(8,2)
);
/*客户表插入数据*/
insert into customer
values(‘101001‘,‘孙杨‘,‘广州‘,1234),
(‘101002‘,‘郭海‘,‘南京‘,3526),
(‘101003‘,‘卢江‘,‘苏州‘,6892),
(‘101004‘,‘郭惠‘,‘济南‘,3492);
/*创建银行表*/
create table if not exists bank(
b_id char(5) primary key,
bank_name char(30) not null
);
/*bank表插入数据*/
insert into bank
values(‘B0001‘,‘工商银行‘),
(‘B0002‘,‘建设银行‘),
(‘B0003‘,‘中国银行‘);
insert into bank
values(‘B0004‘,‘农业银行‘);
/*创建存款表(注意外键的代码使用)*/
create table if not exists deposite(
d_id int(10) auto_increment primary key,
c_id char(6),
b_id char(5),
dep_date date,
amount decimal(8,2),
constraint FK_c_id foreign key(c_id) references customer(c_id)
);
/*deposite表插入数据*/
insert into deposite
values(1,‘101001‘,‘B0001‘,‘2011-04-05‘,42526),
(2,‘101002‘,‘B0003‘,‘2012-07-15‘,66500),
(3,‘101003‘,‘B0002‘,‘2010-11-24‘,42366),
(4,‘101004‘,‘B0004‘,‘2008-03-31‘,62362),
(5,‘101001‘,‘B0003‘,‘2002-02-07‘,56346),
(6,‘101002‘,‘B0001‘,‘2004-09-23‘,353626),
(7,‘101003‘,‘B0004‘,‘2003-12-14‘,36236),
(8,‘101004‘,‘B0002‘,‘2007-04-21‘,26267),
(9,‘101001‘,‘B0002‘,‘2011-02-11‘,435456),
(10,‘101002‘,‘B0004‘,‘2012-05-13‘,234626),
(11,‘101003‘,‘B0003‘,‘2001-01-24‘,26243),
(12,‘101004‘,‘B0001‘,‘2009-08-23‘,45671);
四、修改数据(sql语句实现):
1.将数据表deposite中孙杨的存款金额加10000
update deposite set amount =amount+10000
where c_id in(select c_id from customer where name=‘孙杨‘);
2.将数据表deposite中所属账户为工商银行并且存入日期为2011-04-05的人员的存款金额加1000
update deposite set amount=amount+1000
where dep_date=‘2011-04-05‘ and b_id
in(select b_id from bank where bank_name=‘工商银行‘);
3.将数据表deposite中郭海的银行标识改为建设银行
update deposite set b_id=(select b_id from bank where bank_name=‘建设银行‘)
where c_id in(select c_id from customer where name=‘郭海‘);
五、查询数据(sql语句实现):
1.查询孙杨的存款信息(显示信息:客户ID,客户姓名,银行名称,存款金额)
方法(1):内连接查询
SELECT customer.c_id,customer.name,bank.bank_name,deposite.amount
FROM deposite
INNER JOIN customer on customer.c_id= deposite.c_id
INNER JOIN bank on bank.b_id=deposite.b_id
and customer.name=‘孙杨‘
方法(2):表连接查询:
SELECT customer.name,customer.c_id,bank.bank_name,deposite.amount
from customer,bank,deposite
WHERE customer.c_id= deposite.c_id
and bank.b_id= deposite.b_id and customer.name=‘孙杨‘;
2.查询日期为2011-04-05这一天进行过存款的客户ID,客户姓名,银行名称,存款金额
方法(1):内连接查询:
SELECT customer.c_id,customer.name,bank.bank_name,deposite.amount
FROM deposite
INNER JOIN customer on customer.c_id= deposite.c_id
INNER JOIN bank on bank.b_id=deposite.b_id
and deposite.dep_date=‘2011-04-05‘;
方法(2):表连接查询:
SELECT customer.name,customer.c_id,bank.bank_name,deposite.amount
from deposite,customer,bank,
WHERE deposite.dep_date=‘2011-04-05‘
and customer.c_id= deposite.c_id
and bank.b_id= deposite.b_id ;
3.查询郭海在建设银行的存款信息(显示信息:客户ID,客户姓名,银行标识,银行名称,存款日期,存款金额)
方法(1):内连接查询:
SELECT customer.c_id,customer.name,bank.b_id ,bank.bank_name,
deposite.amount,deposite.dep_date
FROM deposite
INNER JOIN customer on customer.c_id= deposite.c_id
INNER JOIN bank on bank.b_id=deposite.b_id
and customer.name=‘郭海‘ and bank.bank_name=‘建设银行‘;
方法(2):表连接查询:
SELECT customer.c_id,customer.name,bank.b_id ,bank.bank_name,
deposite.amount,deposite.dep_date
FROM deposite,bank,customer
WHERE customer.c_id= deposite.c_id
and bank.b_id=deposite.b_id
and customer.name=‘郭海‘ and bank.bank_name=‘建设银行‘;
4.查询工商银行存款大于等于一万的客户姓名(使用表链接和子查询两种方式实现)
方法(1):子查询:
SELECT customer.name FROM customer WHERE c_id in (
SELECT c_id from deposite WHERE amount in
(SELECT amount from deposite WHERE amount>1000 and b_id IN
(SELECT b_id from bank where bank_name=‘工商银行‘)));
方法(2):表连接查询:
SELECT customer.name
FROM deposite,bank,customer
WHERE customer.c_id= deposite.c_id
AND bank.b_id=deposite.b_id
WHERE amount>10000 AND bank_name=‘工商银行‘;
方法(3):内连接查询:
SELECT customer.name
FROM deposite
INNER JOIN customer on customer.c_id= deposite.c_id
INNER JOIN bank on bank.b_id=deposite.b_id
WHERE amount>10000 AND bank_name=‘工商银行‘;
5.查询在农业银行存款前五名的客户存款信息(显示信息:客户姓名,银行名称,存款金额)a
方法(1):内连接查询:
SELECT customer.name,bank.bank_name,deposite.amount
FROM deposite
INNER JOIN customer on customer.c_id= deposite.c_id
INNER JOIN bank on bank.b_id=deposite.b_id
WHERE bank_name=‘农业银行‘ ORDER BY amount DESC LIMIT 5
方法(2):表连接查询:
SELECT customer.name,bank.bank_name,deposite.amount
FROM deposite,bank,customer
WHERE customer.c_id= deposite.c_id
AND bank.b_id=deposite.b_id
and bank_name=‘农业银行‘ ORDER BY amount DESC LIMIT 5;
6.查询姓“卢”的客户的存款信息(显示信息:客户姓名,银行名称,存款金额)
方法(1):内连接查询:
SELECT customer.name,bank.bank_name,deposite.amount
FROM deposite
INNER JOIN customer on customer.c_id= deposite.c_id
INNER JOIN bank on bank.b_id=deposite.b_id where name LIKE ‘卢%‘;
方法(2):表连接查询:
SELECT customer.name,bank.bank_name,deposite.amount
FROM deposite,bank,customer
WHERE customer.c_id= deposite.c_id
AND bank.b_id=deposite.b_id AND name LIKE ‘卢%‘;
mysql的题目_mysql经典例题相关推荐
- mysql查询语句题目_MySQL经典练习题及答案,常用SQL语句练习50题
--1.查询"01"课程比"02"课程成绩高的学生的信息及课程分数 select a.* ,b.s_score as 01_score,c.s_score as ...
- 45道mysql数据库题目_MySQL 45道练习题
--1. 查询Student表中的所有记录的Sname.Ssex和Class列. SELECT sname,ssex,class FROMstudent;--2.查询教师所有的单位即不重复的Depar ...
- oracle竖着显示数据,2020 Oracle、mysql经典例题一(如何把表格数据竖着排列)
2020 Oracle.mysql经典例题一(如何把表格数据竖着排列) 2020 Oracle.mysql经典例题一(如何把表格数据竖着排列) Oracle.mysql经典例题--如何把表格成绩竖着排 ...
- mysql 张三的语文成绩_八道 经典的 MYSQL 面试题目(有答案)
八道 经典的 MYSQL 面试题目(有答案) ***答案统一在 最下面哦*** (1)表名:购物信息 购物人 商品名称 数量 A 甲 2 B 乙 4 C 丙 1 A 丁 2 B 丙 5 -- (其他用 ...
- mysql经典例题50道52
mysql经典例题50道52 初学mysql写了50道例题 初学mysql写了50道例题 建表:create table Student(SId varchar(10),Sname varchar(1 ...
- mysql函数示例_mysql函数备忘单和示例
mysql函数示例 There are a ton of functions provided by MySQL and most of them are used extensively. I wi ...
- [二分查找] 二:二分查找的经典例题
1.何时应该会使用二分查找 当题目中出现有序数组时 当时间复杂度要求为log(n)时 搜索范围可以一次缩小一半时 2. 经典例题1 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果 ...
- 双指针算法(三):力扣【167.两数之和 | 经典例题
本文将讲述双指针算法的一个经典例题,167.两数之和 [题目描述] 给定一个已按照 升序排列 的整数数组 numbers ,请你从数组中找出两个数满足相加之和等于目标数 target . 函数应该以长 ...
- 华为杯数学建模优秀论文_数学建模经典例题(2011年国赛A题与优秀论文)
数学建模经典例题 (更多往期经典例题可点击文章最后相关推荐哦) 试题中的附件1.2和3请点击"阅读原文"查看 相关推荐数学建模经典例题(2000年国赛A题与优秀论文)数学建模经典例 ...
最新文章
- Android官方模拟器root,在Android模拟器上如何获得root权限?
- WEB--一个不错的想法
- 大学生能从计算机游戏中受益,2017年6月英语四级作文练习:大学生玩游戏
- SD:配置国家代码的检查和客户主数据隐藏字段 20190516
- 常见的C#异常及其修复方法
- Hadoop 安装目录及配置
- GoldenGate组态(四)它veridata组态
- win创建linux目录,Windows与Linux上的文件创建时间
- mysql中 show index from tb_name命令各列的含义
- svm loss function是什么
- 什么是信息安全管理体系
- 玩客云折腾记录(一):编译 ArmBian 系统
- CAD测量图纸时数据显示不出来怎么办?
- C# vb .net实现玻璃桌子效果滤镜
- 桌面widget详解(四)——桌面音乐播放器(实战)
- 种植的黄瓜,为什么会出现早衰?如何防治和补救?
- So Easy京东商城
- 转 做自己的m3u8点播系统使用HTTP Live Streaming HLS技术)
- PTC creo 3.0 安装教程
- Docker的volumes踩坑
热门文章
- 真爱至上Love Actually
- ASP.NET WEB API微信支付通知接口,返回xml数据,微信服务器不识别问题
- 鞋长度和欧美的标准宽度换算表
- 再传捷报!人大金仓获2022年中国信创产业拳头奖“最佳数据库品牌”大奖
- 爱普生喷墨打印机之连续供墨系统经典故障
- 淘宝店铺商品接口 item_search_shop数据获取、拼多多关键词、1688原数据接口、淘宝商品详情sku信息等各大电商平台接口采集调用展示
- 普陀区科技创新型小巨人企业
- 年三十 放鞭炮 驱年兽 迎新春 财运到 兔年大吉
- 【Exception】Class com.XXX1 can not access a member of class com.XXX2 with modifiers “public“
- 央联众商APP告诉你怎样来“理”,然后才有那个“财”