日期:2014-05-17  浏览次数:21029 次

这些怎么用sql做
账户基本表


账户号 账户名称 客户号 开户日期
1000001 账户名称1 101 20110101
1000002 账户名称2 102 20110103
1000003 账户名称3 101 20110103
1000004 账户名称4 102 20110108
1000005 账户名称5 101 20110102

账户余额明细表
账户号 开始日期 到期日期 账户余额
1000001 20110101 20110110 1000
1000001 20110111 20110301 2000
1000001 20110301 20110331 500
1000002 20110103 20110110 300
1000002 20110111 20110301 6000
1000003 20110103 20110301 80000
1000004 20110108 20110301 200
1000005 20110102 20110301 5000

客户资料表
客户号 客户名称 身份证号 地址
101 张1
102 李2
103 张3




1、查询客户号为101所有账户余额在 20110101号 的账户汇总余额
2、查询客户号为101的客户在20110104号账户明细
3、查询在20110103号那天有哪些客户开户,并且这天各账户的余额是多少?
4、查询客户名称为姓“张”的都开了哪些账户及基本资料



------解决方案--------------------
发帖的时候 尽量贴上建表和插入的sql 然后贴上想要的结果

 先建表 吃饭去了
SQL code

create table 账户基本表(
 账户号 varchar2(20) not null,
 账户名称 varchar2(20) not null,
 客户号 varchar2(20) not null,
 开户日期 varchar2(10) not null
);
insert into 账户基本表 values('1000001','账户名称1','101','20110101');   
insert into 账户基本表 values('1000002','账户名称2','102','20110103');
insert into 账户基本表 values('1000003','账户名称3','101','20110103');
insert into 账户基本表 values('1000004','账户名称4','102','20110108');
insert into 账户基本表 values('1000005','账户名称5','101','20110102');    

create table 账户余额明细表(
 账户号 varchar2(10) not null,
 开始日期 varchar2(10) not null,
 到期日期 varchar2(10) not null,
 账户余额 number(20) not null
);
insert into 账户余额明细表 values('1000001','20110101','20110110',1000); 
insert into 账户余额明细表 values('1000001','20110111','20110301',2000); 
insert into 账户余额明细表 values('1000001','20110101','20110331',500); 
insert into 账户余额明细表 values('1000002','20110103','20110110',300); 
insert into 账户余额明细表 values('1000002','20110111','20110301',6000); 
insert into 账户余额明细表 values('1000003','20110103','20110301',80000); 
insert into 账户余额明细表 values('1000004','20110108','20110301',200); 
insert into 账户余额明细表 values('1000005','20110102','20110301',5000); 

create table 客户资料表(
 客户号 varchar2(10) not null,
 客户名称 varchar2(50) not null,
 身份证号 varchar2(20),
 地址 varchar2(500)
);
insert into 客户资料表 values('101','张1','',''); 
insert into 客户资料表 values('102','李2','','');
insert into 客户资料表 values('103','张3','','');