【京东】查询产生理赔金额的快递信息
WHERE 条件JOIN 连接ORDER BY面试真题
题目描述
来源:京东 SQL 面试真题
某物流公司需要查询产生过快递损坏理赔费用的快递信息。
数据表
express_tb 快递信息表
| 字段 | 类型 | 说明 |
|---|---|---|
| exp_number | VARCHAR | 快递单号,主键 |
| exp_type | VARCHAR | 快递种类 |
| out_city | VARCHAR | 快递发出城市 |
| in_city | VARCHAR | 快递邮入城市 |
| create_time | DATETIME | 快递单创建时间 |
exp_cost_tb 快递费用信息表
| 字段 | 类型 | 说明 |
|---|---|---|
| exp_number | VARCHAR | 快递单号 |
| transport_cost | DECIMAL | 运费 |
| insurance_cost | DECIMAL | 运费险费用 |
| claims_cost | DECIMAL | 快递损坏理赔费用,可为空 |
题目要求
- 只查询
claims_cost > 0的快递。 claims_cost为 0 或 NULL 时,均不属于产生理赔金额的快递。- 输出快递单号、快递种类和理赔费用。
- 按理赔费用降序排列。
- 理赔费用相同时,按快递单号升序排列。
期望输出列
| 列名 | 说明 |
|---|---|
| exp_number | 快递单号 |
| exp_type | 快递种类 |
| claims_cost | 理赔费用 |
数据样例
| exp_numberPKVARCHAR(32) | exp_typeVARCHAR(50) | out_cityVARCHAR(50) | in_cityVARCHAR(50) | create_timeDATETIME |
|---|---|---|---|---|
| JD1001 | 文件 | 北京 | 上海 | 2022-06-01 08:00:00 |
| JD1002 | 生鲜 | 广州 | 深圳 | 2022-06-01 09:00:00 |
| JD1003 | 易碎品 | 杭州 | 成都 | 2022-06-01 10:00:00 |
| JD1004 | 普通件 | 南京 | 武汉 | 2022-06-01 11:00:00 |
| JD1005 | 易碎品 | 苏州 | 北京 | 2022-06-01 12:00:00 |
| JD1006 | 普通件 | 上海 | 天津 | 2022-06-01 13:00:00 |
输入数据显示 6 / 6 行
SQL 编辑器正在保存草稿...
Ctrl + Enter 运行
正在加载 SQL 编辑器...
运行你的 SQL 查询后,结果将显示在这里