mysql经典案例

http://download.csdn.net/detail/fuchunyuan0/9573203此链接可以下载我上传的word文档sql案例原题,为北风网mysql学习部分的考试题.

mysql经典案例:

  1. 使用sql语句创建数据库,名称为CustomDB
    答:create database if not exists CustomDB;
  2. 创建数据表customer(客户)、deposite(存款)、bank(银行),表结构如下:
    customer
    deposit
    数据
    数据2

  3. 创建表,代码如下:
    答:

/*创建顾客表*/
create table if not exists customer(
     c_id char(6) primary key,
     name varchar(30)not null,
     location varchar(30),
     salary decimal(8,2)

);
/*创建银行表*/
create table if not exists bank(
    b_id char(5) primary key,
    bank_name char(30) not null
);
/*创建存款表(注意外键的代码使用)*/
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)
);
/*插入数据*/
insert into customer 
values('101001','孙杨','广州',1234),
('101002','郭海','南京',3526),
('101003','卢江','苏州',6892),
('101004','郭惠','济南',3492);
insert into bank
values('B0001','工商银行'),
('B0002','建设银行'),
('B0003','中国银行');
insert into bank
values('B0004','农业银行');
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);
  1. 将数据表deposite中孙杨的存款金额加10000
update  deposite set amount =amount+10000
 where c_id in(select c_id from custom where name='孙杨');
  1. 将数据表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='工商银行');
  1. 将数据表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='郭海');
  1. 查询孙杨的存款信息(显示信息:客户ID,客户姓名,银行名称,存款金额)
select customer.c_id,name,bank_name,amount 
from inner join customer on customer.c_id=deposite.c_id
inner join bank on bank.b_id=deposite.b_id
where name='郭海' and bank_name='工商银行';
  1. 查询日期为2011-04-05这一天进行过存款的客户ID,客户姓名,银行名称,存款金额

  2. 查询郭海在工商银行的存款信息(显示信息:客户ID,客户姓名,银行标识,银行名称,存款日期,存款金额)

  3. 查询工商银行存款大于等于一万的客户姓名(使用表链接和子查询两种方式实现)
  4. 查询在农业银行存款前五名的客户存款信息(显示信息:客户姓名,银行名称,存款金额)
  5. .查询姓“卢”的客户的存款信息(显示信息:客户姓名,银行名称,存款金额)
  6. 创建存储过程update_salary,更新customer表的salary属性,将salary低于5000的客户的salary变为原来的2倍.
  • 7
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值