SQL-每日一题【1173. 即时食物配送 I】

题目

 配送表: Delivery

SQL-每日一题【1173. 即时食物配送 I】_第1张图片

如果顾客期望的配送日期和下单日期相同,则该订单称为 「即时订单」,否则称为「计划订单」。

查询即时订单所占的百分比, 保留两位小数。

查询结果如下所示。

示例 1:

SQL-每日一题【1173. 即时食物配送 I】_第2张图片 

 

解题思路

1.题目要求我们查询出顾客期望的配送日期和下单日期相同的记录所占百分比。我们可以用子查询来解决这个问题。

2.首先我们查询出顾客期望的配送日期和下单日期相同的记录,除以表中的所有记录,并用round()函数保留 4 位小数,因为要求百分比,所以我们再乘以 100即可。

代码实现

select round(
    (select count(*) from Delivery Where order_date = customer_pref_delivery_date  )/
    (select count(*) from Delivery),4)*100
as immediate_percentage 

测试结果

SQL-每日一题【1173. 即时食物配送 I】_第3张图片

你可能感兴趣的:(sql,数据库)