数据库作业.docx
- 文档编号:4035560
- 上传时间:2022-11-27
- 格式:DOCX
- 页数:11
- 大小:212.44KB
数据库作业.docx
《数据库作业.docx》由会员分享,可在线阅读,更多相关《数据库作业.docx(11页珍藏版)》请在冰豆网上搜索。
数据库作业
1.查询所有法人的法人代码、法人名称、经济性质和注册资金。
SELECTEno,ename,erep,enatureFROMlegalentityt
2.查询“B1100”银行的银行名称和电话。
SELECTa.bname,a.btelFROMbanktaWHEREa.bno='B1100'
3.查询贷款金额在2000至4000万元之间的法人代码、银行代码、贷款日期和贷款金额。
SELECTa.eno,a.bno,a.ldate,a.lamountFROMloantaWHEREa.lamount<4000ANDa.lamount>2000
4.查询2009年1月1日以后贷款且贷款期限是10年的法人代码。
SELECTa.enoFROMloantaWHEREa.ldate>'2009-1-1'ANDa.lterm=10
5.查询贷款期限为5年、10年或15年的贷款信息。
SELECT*FROMloantaWHEREa.lterm=10ORa.lterm=5ORa.lterm=15
6.查询经济性质为“私营”的所有法人的最高注册资金、最低注册资金和平均注册资金。
selectMAX(ecapital)AS最高注册资,MIN(ecapital)AS最低注册资,AVG(ecapital)AS平均注册资
fromlegalentitytwhereenature='私营'
7.查询每种经济性质的法人的经济性质、最高注册资金、最低注册资金和平均注册资金。
selectenature,MAX(ecapital)AS最高注册资,MIN(ecapital)AS最低注册资,AVG(ecapital)AS平均注册资
fromlegalentityt
groupbyenature
8.统计每个法人的法人代码和贷款总次数,要求查询结果按贷款总次数的升序排列。
SELECTeno,COUNT(*)FROMloantGROUPBYenoORDERBYCOUNT(*)ASC
9.查询贷款次数超过3次的法人的平均贷款金额和贷款次数。
SELECTeno,AVG(lamount)AS平均贷款金额,COUNT(*)
FROMloant
GROUPBYeno
HAVINGCOUNT(*)>3
10.统计每种经济性质贷款的法人的总数和其平均贷款金额,列出平均贷款金额前三名的经济性质、法人总数和平均贷款金额。
SELECTa.enature,COUNT(*)AS法人总数,AVG(b.lamount)AS平均贷款金额
FROMlegalentityta,loantb
WHEREa.Eno=b.eno
GROUPBYa.enature
ORDERBY平均贷款金额DESC
LIMIT3
11.查询贷款期限为5年、10年或15年的法人名称、银行名称、贷款日期、贷款金额和贷款期限。
SELECTb.erep,a.bname,c.ldate,c.lamount,c.lterm
FROMbankta,legalentitytb,loantc
WHEREa.bno=c.bno
ANDb.Eno=c.eno
AND(c.lterm=5ORc.lterm=10ORc.lterm=15)
12.查询经济性质为“国营”的法人在“上海”的银行贷款的信息,列出法人名称、银行名称和贷款日期。
SELECTb.erep,a.bname,c.ldate
FROMbankta,legalentitytb,loantc
WHEREa.bno=c.bno
ANDb.Eno=c.eno
ANDb.enature='国营'
ANDa.bnameLIKE'%上海%'
13.查询与“B1100”银行在同一城市(假设银行名称的第5和第6个字符为城市名称)的其他的银行的名称。
SELECTa.bname
FROMbankta
WHEREMID(a.bname,5,2)=(
SELECTMID(b.bname,5,2)AS城市
FROMbanktb
WHEREb.bno='B1100'
)
14.查询哪些银行没有贷过款,列出银行号和银行名称。
分别用多表连接和子查询两种方式实现。
多表连接:
SELECTa.bno,a.bname,b.lamountFROMbankta
LEFTJOINloantbONb.bno=a.bno
WHERElamountISNULL
子查询:
selecta.bno,a.bnamefrombankta
wherea.bnoNOTIN(
selectb.bnofromloantb
)
15.查询贷过款的所有法人的名称,贷款银行名称,贷款日期,贷款金额,要求将查询结果放在一张新的永久表New_LoanT中,新表中的列名分别为:
法人名称、银行名称、贷款日期和贷款金额。
CREATETABLENew_LoanT(
SELECTerep,bname,ldate,lamount
FROMbankta,legalentitytb,loantc
WHEREc.bno=a.bno
ANDc.eno=b.Eno)
16.分别查询经济性质“国营”和“私营”的法人名称,贷款银行名称,贷款日期,贷款金额,要求将这两个查询结果合并成一个结果集,并以法人名称、银行名称、贷款日期和贷款金额作为显示列名,结果按贷款日期的升序和贷款金额的降序显示。
SELECTerepAS法人名称,bnameAS银行名称,ldateAS贷款日期,lamountAS贷款金额
FROMbankta,legalentitytb,loantc
WHEREc.bno=a.bno
ANDc.eno=b.Eno
ANDenature='国营'
UNION
SELECTerepAS法人名称,bnameAS银行名称,ldateAS贷款日期,lamountAS贷款金额
FROMbankta,legalentitytb,loantc
WHEREc.bno=a.bno
ANDc.eno=b.Eno
ANDenature='私营'
ORDERBY贷款日期ASC,贷款金额DESC
17.查询经济性质为“国营”的法人在上海的银行贷款的信息,列出法人代码、银行代码和贷款日期,分别用多表连接和子查询两种方式实现。
多表连接:
SELECTc.eno,c.bno,c.ldate
FROMbankta,legalentitytb,loantc
WHEREc.eno=b.Eno
ANDc.bno=a.bno
ANDb.enature='国营'
ANDa.bnameLIKE'%上海%'
子查询:
SELECTc.eno,c.bno,c.ldate
FROMloantc
WHEREc.bnoIN(SELECTb.bnoFROMbanktbWHEREb.bnameLIKE'%上海%')
ANDc.enoIN(SELECTa.EnoFROMlegalentitytaWHEREa.enature='国营')
18.查询在“建设银行上海分行”贷过款的法人名称,分别用多表连接和子查询两种方式实现。
多表连接:
SELECTb.erep
FROMbankta,legalentitytb,loantc
WHEREc.eno=b.Eno
ANDc.bno=a.bno
ANDa.bname='建设银行上海分行'
子查询:
SELECTb.erep
FROMlegalentitytb,loantc
WHEREc.eno=b.Eno
ANDc.bnoIN(SELECTa.bnoFROMbanktaWHEREa.bname='建设银行上海分行')
19.查询在“工商银行北京A支行”贷款金额前三名的法人的法人代码、法人名称和经济性质,分别用多表连接和子查询两种方式实现。
多表连接:
SELECTb.Eno,b.erep,b.enature,c.lamount
FROMbankta,legalentitytb,loantc
WHEREc.eno=b.Eno
ANDc.bno=a.bno
ANDa.bname='工商银行北京A支行'
ORDERBYc.lamountDESC
LIMIT3
子查询:
SELECTb.Eno,b.erep,b.enature,c.lamount
FROMlegalentitytb,loantc
WHEREc.eno=b.Eno
ANDc.bnoIN(SELECTa.bnoFROMbanktaWHEREa.bname='工商银行北京A支行')
ORDERBYc.lamountDESC
LIMIT3
20.查询在“工商银行北京B支行”贷款、且贷款金额高于此银行的平均贷款金额的法人代码、贷款日期和贷款金额。
SELECTb.Eno,b.erep,b.enature,c.lamount
FROMbankta,legalentitytb,loantc
WHEREc.eno=b.Eno
ANDc.bno=a.bno
ANDa.bname='工商银行北京B支行'
ANDc.lamount>(SELECTAVG(lamount)FROMloant)
ORDERBYc.lamountDESC
21.在银行表中插入如下数据:
银行代码号为:
B321B,银行名称为:
建设银行上海B分行,电话为空值。
INSERTINTObanktVALUES('B321B','建设银行上海B分行','')
22.在法人表中插入如下数据:
法人代码号为:
E11,法人名称为:
新法人,注册资金为:
2350万元,经济性质使用默认值。
INSERTINTOlegalentityt(Eno,ecapital,erep)VALUES('E11',
'2350','新法人')
23.删除银行编号为“B321B”的银行信息。
DELETEFROMbanktWHEREbno='B321B'
24.删除2000年之前一次贷款金额最小的贷款记录。
DELETEFROMloanta
WHEREa.lamount=(
SELECTMIN(b.lamount)
FROMloantb
WHEREb.ldate<'2000-1-1'
)
25.删除从贷款日期到当前日期天数超过10年的贷款记录。
DELETEFROMloant
WHERE(SELECTDATEDIFF(CURDATE(),ldate))>3650
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 作业