2024年1月24日发(作者:)
金融sql笔试题
一、题目描述:
假设有一个金融公司,该公司有两个表,一个是客户表(Customers),另一个是交易表(Transactions),请你编写SQL查询语句来解决以下问题。
客户表(Customers)的结构如下:
CustomerID(客户ID,主键)
CustomerName(客户姓名)
Age(客户年龄)
Sex(客户性别)
Country(客户所在国家)
交易表(Transactions)的结构如下:
TransactionID(交易ID,主键)
CustomerID(客户ID,外键,关联Customer表的CustomerID字段)
TransactionDate(交易日期)
Amount(交易金额)
请根据上述表结构,编写SQL查询语句来解决以下问题:
1. 查询所有客户的姓名和国家;
2. 查询交易金额大于1000的所有交易记录,并按交易金额降序排序;
3. 查询交易日期在2019年1月份的所有交易记录,并按交易金额升序排序;
4. 查询客户表中有交易记录的客户姓名和年龄;
5. 查询每个国家的客户数量,并按客户数量降序排序。
题目答案:
1. 查询所有客户的姓名和国家:
SELECT CustomerName, Country
FROM Customers;
2. 查询交易金额大于1000的所有交易记录,并按交易金额降序排序:
SELECT *
FROM Transactions
WHERE Amount > 1000
ORDER BY Amount DESC;
3. 查询交易日期在2019年1月份的所有交易记录,并按交易金额升序排序:
SELECT *
FROM Transactions
WHERE YEAR(TransactionDate) = 2019 AND
MONTH(TransactionDate) = 1
ORDER BY Amount ASC;
4. 查询客户表中有交易记录的客户姓名和年龄:
SELECT erName,
FROM Customers c
INNER JOIN Transactions t ON erID = erID;
5. 查询每个国家的客户数量,并按客户数量降序排序:
SELECT Country, COUNT(*) AS CustomerCount
FROM Customers
GROUP BY Country
ORDER BY CustomerCount DESC;
这些是根据给定的客户表和交易表的结构,针对不同问题编写的SQL查询语句。您可以根据需要在实际应用中使用这些查询语句,以获取所需的数据结果。以上查询语句已经按题目要求进行了格式书写。


发布评论