中级训练营 / 训练 7:SQL必知必会:德国信用风险数据分析
训练 7 SQL必知必会习题包.csv

SQL必知必会:德国信用风险数据分析

共 70 道题  · 已完成 0
0%
完成率
1
SELECT基础:查询所有列 初级

使用SELECT语句查询german_credit_risk表中的所有数据。 数据表:german_credit_risk 字段:Age, Sex, Job,...

2
SELECT基础:查询指定列 初级

查询所有客户的年龄(Age)和信用额度(Credit amount)两列数据。 数据表:german_credit_risk

3
SELECT基础:查询唯一值 初级 100%

查询所有不同的贷款目的(Purpose)类型。 数据表:german_credit_risk 要求:使用DISTINCT去除重复值

4
SELECT基础:限制返回行数 初级

查询前10条记录的Age和Credit amount。 数据表:german_credit_risk 要求:使用LIMIT限制返回行数

5
ORDER BY:单列排序 初级

查询所有客户的Credit amount,按金额从高到低排序。 数据表:german_credit_risk 要求:降序排列

6
ORDER BY:多列排序 初级

查询Purpose和Credit amount,先按Purpose升序,再按Credit amount降序。 数据表:german_credit_risk

7
ORDER BY:按列位置排序 初级

查询Age、Credit amount、Duration三列,按第2列降序排列。 数据表:german_credit_risk 要求:使用列位置编号排序

8
WHERE:等于条件 初级

查询Risk为good(低风险)的所有记录。 数据表:german_credit_risk 说明:Risk=good表示低风险,Risk=bad表示高风险

9
WHERE:不等于条件 初级

查询Purpose不是car(购车)的所有记录。 数据表:german_credit_risk

10
WHERE:小于条件 初级

查询年龄小于25岁的客户记录。 数据表:german_credit_risk

11
WHERE:大于等于条件 初级

查询信用额度大于等于10000的客户。 数据表:german_credit_risk

12
WHERE:BETWEEN范围查询 初级

查询信用额度在5000到10000之间的客户。 数据表:german_credit_risk 要求:使用BETWEEN...AND

13
WHERE:IS NULL判断 初级

查询Saving accounts字段为NULL的记录。 数据表:german_credit_risk 说明:NaN在SQL中显示为NULL

14
AND逻辑:多条件查询 初级

查询年龄大于30且信用额度大于5000的客户。 数据表:german_credit_risk

15
OR逻辑:或条件查询 初级

查询Sex为male或female的记录(所有记录)。 数据表:german_credit_risk 说明:演示OR的用法

16
AND与OR组合 初级

查询(年龄大于40或信用额度大于10000)且Risk为good的记录。 数据表:german_credit_risk 要求:使用括号明确优先级

17
IN操作符 初级

查询Purpose为car、furniture/equipment、education的记录。 数据表:german_credit_risk 要求:使用IN操...

18
NOT操作符 初级

查询Housing不为own的记录。 数据表:german_credit_risk

19
LIKE:百分号通配符 初级

查询Purpose以'bu'开头的所有记录。 数据表:german_credit_risk 说明:查找以'bu'开头的目的,如business

20
LIKE:下划线通配符 初级

查询Purpose格式为'bu_____'的记录(共8个字符,以bu开头)。 数据表:german_credit_risk 要求:使用_通配符匹配单个字符

21
计算字段:拼接 初级

查询客户信息,将Purpose和Risk拼接显示。 数据表:german_credit_risk 要求:格式为'Purpose:Risk'

22
别名AS 初级

查询Credit amount并命名为'信用额度'。 数据表:german_credit_risk 要求:使用AS设置列别名

23
算术计算 初级

查询信用额度除以贷款期限的月还款额(近似值)。 数据表:german_credit_risk 要求:计算Credit amount/Duration

24
函数:UPPER 初级

查询所有不同的Purpose,并转换为大写。 数据表:german_credit_risk 要求:使用UPPER函数

25
函数:LENGTH 初级

查询Purpose及其字符长度。 数据表:german_credit_risk 要求:使用LENGTH函数

26
聚合函数:COUNT 初级

统计客户总数。 数据表:german_credit_risk 要求:使用COUNT(*)

27
聚合函数:SUM 初级

计算所有客户的信用额度总和。 数据表:german_credit_risk 要求:使用SUM函数

28
聚合函数:AVG 初级

计算平均信用额度。 数据表:german_credit_risk 要求:使用AVG函数

29
聚合函数:MAX和MIN 初级

查询信用额度的最大值和最小值。 数据表:german_credit_risk 要求:同时返回MAX和MIN

30
聚合函数组合 初级

查询信用额度的统计信息:总数、总和、平均值、最大值、最小值。 数据表:german_credit_risk

31
GROUP BY:单列分组 中级

统计每种Purpose的记录数量。 数据表:german_credit_risk 要求:按Purpose分组统计

32
GROUP BY:多列分组 中级

统计每种Purpose和Risk组合的记录数量。 数据表:german_credit_risk 要求:按Purpose和Risk分组

33
GROUP BY:分组求和 中级

计算每种Purpose的信用额度总和。 数据表:german_credit_risk 要求:按Purpose分组求和

34
GROUP BY:分组平均值 中级

计算每种Purpose的平均信用额度。 数据表:german_credit_risk 要求:按Purpose分组计算平均值

35
HAVING:过滤分组 中级

查询记录数超过100条的Purpose。 数据表:german_credit_risk 要求:使用HAVING过滤分组结果

36
HAVING与WHERE组合 中级

查询信用额度大于5000的记录中,每种Purpose的平均额度,只显示平均额度大于8000的。 数据表:german_credit_risk 要求:同时使用W...

37
子查询:WHERE中使用 中级

查询信用额度高于平均信用额度的所有记录。 数据表:german_credit_risk 要求:使用子查询计算平均值

38
子查询:IN中使用 中级

查询信用额度最高的10个客户的完整信息。 数据表:german_credit_risk 要求:使用子查询找出最高额度

39
子查询:计算字段 中级

查询每个客户的信用额度与平均额度的差值。 数据表:german_credit_risk 要求:使用子查询作为计算字段

40
CASE表达式:简单分类 中级

根据Credit amount分类:小于3000为'低',3000-7000为'中',大于7000为'高'。 数据表:german_credit_risk 要...

41
CASE表达式:统计分类 中级

统计各信用额度等级的客户数量。 数据表:german_credit_risk 分类标准:<3000为'低',3000-7000为'中',>7000为'高'

42
年龄分组统计 中级

按年龄段统计客户数量:25岁以下、25-35岁、35-45岁、45岁以上。 数据表:german_credit_risk

43
贷款期限分析 中级

按贷款期限(Duration)分组,统计平均信用额度和客户数量。 数据表:german_credit_risk 要求:按期限升序排列

44
信用历史分析 中级

按Housing分组统计Risk为good和bad的数量。 数据表:german_credit_risk

45
违约率分析 中级

计算每种Purpose的违约率(bad占比)。 数据表:german_credit_risk 违约率 = bad客户数 / 总客户数 * 100

46
性别风险分析 中级

统计每种性别的客户数量和违约率。 数据表:german_credit_risk 要求:按违约率降序排列

47
储蓄状态分析 中级

按Saving accounts分组统计客户数量和平均信用额度。 数据表:german_credit_risk

48
工作类型分析 中级

按Job分组统计客户数量和违约率。 数据表:german_credit_risk

49
住房情况分析 中级

按Housing分组统计客户数量、平均信用额度和违约率。 数据表:german_credit_risk

50
活期账户分析 中级

按Checking account分组统计客户数量和违约率。 数据表:german_credit_risk

51
年龄风险分析 中级

按年龄段统计违约率:<25岁、25-35岁、35-45岁、45岁以上。 数据表:german_credit_risk

52
多条件筛选 中级

查询年龄25-35岁、信用额度5000-10000、Risk为good的客户。 数据表:german_credit_risk

53
复杂分组统计 中级

按Purpose和Housing分组统计客户数量。 数据表:german_credit_risk 要求:只显示客户数超过30条的组

54
排名查询 中级

查询信用额度前10名的客户信息。 数据表:german_credit_risk 要求:按Credit amount降序,取前10条

55
分位数查询 中级

查询信用额度最低的10%的客户。 数据表:german_credit_risk 要求:共1000条记录,取前100条

56
OFFSET分页 中级

查询信用额度排名第11-20名的客户。 数据表:german_credit_risk 要求:使用LIMIT OFFSET

57
去重计数 初级

统计有多少种不同的Purpose。 数据表:german_credit_risk 要求:使用COUNT(DISTINCT)

58
分组后排序 中级

按Purpose分组统计客户数量,按数量降序排列。 数据表:german_credit_risk

59
多字段分组排序 中级

按Purpose和Risk分组统计,按Purpose升序、数量降序排列。 数据表:german_credit_risk

60
ROUND函数 初级

查询平均信用额度,保留2位小数。 数据表:german_credit_risk 要求:使用ROUND函数

61
ABS函数 中级

查询每个客户的信用额度与平均额度的绝对差值。 数据表:german_credit_risk 要求:使用ABS函数

62
COALESCE函数 初级

查询Saving accounts字段,如果为NULL则显示'unknown'。 数据表:german_credit_risk

63
NULLIF函数 初级

查询Duration,如果等于0则返回NULL。 数据表:german_credit_risk 说明:演示NULLIF用法

64
类型转换CAST 初级

将Credit amount转换为TEXT类型。 数据表:german_credit_risk 要求:使用CAST函数

65
字符串截取SUBSTR 初级

截取Purpose字段的前5个字符。 数据表:german_credit_risk 要求:使用SUBSTR函数

66
字符串替换REPLACE 初级

将Purpose中的'a'替换为'A'。 数据表:german_credit_risk 要求:使用REPLACE函数

67
查询中等额度客户 中级

查询信用额度排名在451-460名的客户信息(中等额度区间)。 数据表:german_credit_risk 要求:按Credit amount升序,使用OF...

68
信用风险综合分析 高级

按年龄段和Purpose分组,统计平均信用额度和违约率。 数据表:german_credit_risk 年龄段:<30, 30-40, 40-50, >50

69
高价值客户分析 高级

找出信用额度前10%且为低风险的所有记录。 数据表:german_credit_risk 要求:信用额度大于等于90分位数且Risk='good'

70
多维度交叉分析 高级

按Sex、Housing、Job三个维度分组统计违约率。 数据表:german_credit_risk 要求:只显示记录数超过20条的组