版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2026年招商银行成都温江支行校招金融科技岗数据库SQL查询专项题第一题:基础SQL查询(共3题,每题10分)题目1:假设某银行客户数据库表`Customers`包含以下字段:`CustomerID`(客户ID)、`Name`(客户姓名)、`City`(所在城市)、`Gender`(性别)、`Balance`(账户余额)。请编写SQL查询语句,满足以下要求:1.查询所有成都市的客户姓名和账户余额;2.查询余额超过10万元的男性客户数量;3.按城市分组统计客户数量,并按客户数量降序排列。答案与解析:1.查询所有成都市的客户姓名和账户余额:sqlSELECTName,BalanceFROMCustomersWHERECity='成都';解析:使用`WHERE`子句筛选`City`字段值为“成都”的记录,并选择`Name`和`Balance`字段。2.查询余额超过10万元的男性客户数量:sqlSELECTCOUNT()ASMaleCountFROMCustomersWHEREGender='男'ANDBalance>100000;解析:使用`COUNT()`统计符合条件的记录数,`Gender`筛选性别为“男”,`Balance>100000`筛选余额超过10万元的客户。3.按城市分组统计客户数量,并按客户数量降序排列:sqlSELECTCity,COUNT()ASCustomerCountFROMCustomersGROUPBYCityORDERBYCustomerCountDESC;解析:使用`GROUPBY`按城市分组,`COUNT()`统计每组客户数量,`ORDERBY`按客户数量降序排列。第二题:多表连接查询(共2题,每题15分)题目2:假设银行数据库包含两个表:-`Transactions`(交易表):`TransactionID`(交易ID)、`CustomerID`(客户ID)、`Amount`(交易金额)、`TransactionDate`(交易日期);-`Customers`(客户表):`CustomerID`(客户ID)、`Name`(客户姓名)、`City`(所在城市)。请编写SQL查询语句,满足以下要求:1.查询2025年12月成都市的客户交易总额,并按交易总额降序排列;2.查询每位客户的最近一笔交易金额,结果包含客户姓名和最近交易金额。答案与解析:1.查询2025年12月成都市的客户交易总额,并按交易总额降序排列:sqlSELECTCustomers.City,SUM(Transactions.Amount)ASTotalAmountFROMTransactionsJOINCustomersONTransactions.CustomerID=Customers.CustomerIDWHERETransactions.TransactionDateBETWEEN'2025-12-01'AND'2025-12-31'ANDCustomers.City='成都'GROUPBYCustomers.CityORDERBYTotalAmountDESC;解析:使用`INNERJOIN`连接`Transactions`和`Customers`表,通过`WHERE`子句筛选2025年12月的成都客户交易,`SUM`计算交易总额,`GROUPBY`按城市分组,`ORDERBY`降序排列。2.查询每位客户的最近一笔交易金额,结果包含客户姓名和最近交易金额:sqlSELECTCustomers.Name,MAX(Transactions.Amount)ASLatestAmountFROMTransactionsJOINCustomersONTransactions.CustomerID=Customers.CustomerIDGROUPBYCustomers.Name;解析:使用`INNERJOIN`连接表,`MAX`获取每位客户的最大交易金额(即最近一笔交易),`GROUPBY`按客户姓名分组。第三题:子查询与窗口函数(共2题,每题20分)题目3:假设银行数据库包含以下表:-`Employees`(员工表):`EmployeeID`(员工ID)、`Name`(员工姓名)、`Department`(部门)、`Salary`(薪资);-`Branches`(分行表):`BranchID`(分行ID)、`BranchName`(分行名称)、`City`(城市)、`ManagerID`(负责人ID);-`EmployeeBranch`(员工分行关联表):`EmployeeID`(员工ID)、`BranchID`(分行ID)。请编写SQL查询语句,满足以下要求:1.查询每位员工的薪资是否高于其所在分行的平均薪资,结果包含员工姓名、薪资、所在分行名称及分行平均薪资;2.查询每位员工的编号及其在所在分行的工作时长(假设`EmployeeBranch`表包含`JoinDate`字段,表示入职日期)。答案与解析:1.查询每位员工的薪资是否高于其所在分行的平均薪资:sqlSELECTE.Name,E.Salary,B.BranchName,AVG(E.Salary)OVER(PARTITIONBYB.BranchID)ASBranchAvgSalaryFROMEmployeesEJOINEmployeeBranchEBONE.EmployeeID=EB.EmployeeIDJOINBranchesBONEB.BranchID=B.BranchIDORDERBYE.Name;解析:使用`INNERJOIN`连接三个表,`AVG`结合`OVER(PARTITIONBYB.BranchID)`计算每行的分行平均薪资,结果按员工姓名排序。2.查询每位员工的编号及其在所在分行的工作时长:sqlSELECTE.EmployeeID,B.BranchName,DATEDIFF(CURRENT_DATE,EB.JoinDate)ASWorkDurationFROMEmployeesEJOINEmployeeBranchEBONE.EmployeeID=EB.EmployeeIDJOINBranchesBONEB.BranchID=B.BranchID;解析:使用`INNERJOIN`连接表,`DATEDIFF`计算当前日期与入职日期的差值(工作时长),结果包含员工编号、分行名称和工作时长。第四题:复杂查询与聚合(共2题,每题25分)题目4:假设银行数据库包含以下表:-`Customers`(客户表):`CustomerID`(客户ID)、`Name`(客户姓名)、`City`(城市)、`AccountType`(账户类型);-`Loans`(贷款表):`LoanID`(贷款ID)、`CustomerID`(客户ID)、`LoanAmount`(贷款金额)、`LoanTerm`(贷款期限,单位:月);-`Savings`(储蓄表):`AccountID`(储蓄账户ID)、`CustomerID`(客户ID)、`Balance`(储蓄余额)。请编写SQL查询语句,满足以下要求:1.查询每位客户的总贷款金额及总储蓄余额,结果仅包含成都市的客户,并按总贷款金额降序排列;2.查询每位客户的平均贷款期限,结果仅包含贷款金额超过10万元的客户,并按平均贷款期限升序排列。答案与解析:1.查询每位客户的总贷款金额及总储蓄余额,结果仅包含成都市的客户,并按总贷款金额降序排列:sqlSELECTC.Name,SUM(L.LoanAmount)ASTotalLoanAmount,SUM(S.Balance)ASTotalSavingsBalanceFROMCustomersCLEFTJOINLoansLONC.CustomerID=L.CustomerIDLEFTJOINSavingsSONC.CustomerID=S.CustomerIDWHEREC.City='成都'GROUPBYC.NameORDERBYTotalLoanAmountDESC;解析:使用`LEFTJOIN`连接三个表,`SUM`分别计算贷款金额和储蓄余额,`WHERE`筛选成都市客户,`GROUPBY`按客户姓名分组,`ORDERBY`降序排列。2.查询每位客户的平均贷款期限,结果仅包含贷款金额超过10万元的客户,并按平均贷款期限升序排列:sqlSELECTL.CustomerID,AVG(L.LoanTerm)ASAvgLoanTermFROMLoansLWHEREL.LoanAmount>100000GROUPBYL.CustomerIDORDERBYAvgLoanTermASC;解析:使用`WHERE`筛选贷款金额超过10万元的客户,`AVG`计算平均贷款期限,`GROUPBY`按客户ID分组,`ORDERBY`升序排列。第五题:数据透视与条件查询(共1题,30分)题目5:假设银行数据库包含以下表:-`Payments`(支付表):`PaymentID`(支付ID)、`CustomerID`(客户ID)、`PaymentDate`(支付日期)、`Amount`(支付金额)、`PaymentType`(支付类型,如“转账”“取款”等);-`Customers`(客户表):`CustomerID`(客户ID)、`Name`(客户姓名)、`City`(城市)。请编写SQL查询语句,满足以下要求:1.查询每位客户2025年每月的支付总额,并按客户姓名和月份分组;2.查询每位客户在成都市的转账支付总额,结果仅包含转账支付类型,并按支付总额降序排列。答案与解析:1.查询每位客户2025年每月的支付总额,并按客户姓名和月份分组:sqlSELECTC.Name,DATE_FORMAT(PaymentDate,'%Y-%m')ASPaymentMonth,SUM(P.Amount)ASMonthlyTotalFROMPaymentsPJOINCustomersCONP.CustomerID=C.CustomerIDWHEREYEAR(PaymentDate)=2025GROUPBYC.Name,PaymentMonthORDERBYC.Name,PaymentMonth;解析:使用`DATE_FORMAT`将支付日期格式化为“年-月”,`SUM`计算每月支付总额,`GROUPBY`按客户姓名和月份分组,`ORDERBY`排序。2.查询每位客户在成都市的转账支付总额,结果仅包含转账支付类型,并按支付总额降序排列:sqlSELECTC.Name,SUM(P.Amount)ASTransferTotalFROMPay
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年山东济南一中高一下学期期中化学试题含答案
- 2024-2025学年江苏百校联考高一下学期5月检测历史试题含答案
- 肝癌合并腔静脉癌栓手术护理
- 新生儿水肿的护理课件
- 胃癌病人护理专项考试试题
- 肿瘤二科用药错误防范与处理考核试题
- 2026年工业数据分析算法的轻量化部署与边缘计算融合实践
- 2026年心理咨询师认证培训协议
- 2025年AI驱动的产品设计企业定制服务
- 工地值班协议书
- 安全主管转正报告
- 人工肝治疗中的血管通路管理
- 【25新版】七年级下册《道德与法治》28天早背晚默
- DBJ-T 15-270-2024 建筑幕墙工程技术标准
- GB/T 11944-2025中空玻璃
- 2025年中华民族共同体概论简答题(含答案)
- 2025贵州贵阳市公安机关面向社会招聘第三批警务辅助人员274人笔试考试备考题库及答案解析
- 电厂电气专业知识
- 2025年心血管疾病介入培训考试电生理起搏模拟精彩试题(含答案)
- 水厂项目投资协议书
- 江西省农发种业有限公司招聘笔试题库2025
评论
0/150
提交评论