Table: Delivery
| Column Name | Type |
|---|---|
| delivery_id | int |
| customer_id | int |
| order_date | date |
| customer_pref_delivery_date | date |
delivery_id is the primary key of this table. The table holds information about food delivery to customers that make orders at some date and specify a preferred delivery date.
If the customer's preferred delivery date is the same as the order date, then the order is called immediate; otherwise, it is called scheduled.
Write a solution to find the percentage of immediate orders in the table, rounded to 2 decimal places.
Table Schema
| Column Name | Type | Description |
|---|---|---|
delivery_id
PK
|
int | Primary key, unique delivery identifier |
customer_id
|
int | Customer identifier |
order_date
|
date | Date when the order was placed |
customer_pref_delivery_date
|
date | Customer's preferred delivery date |
Input & Output
| delivery_id | customer_id | order_date | customer_pref_delivery_date |
|---|---|---|---|
| 1 | 1 | 2019-08-01 | 2019-08-02 |
| 2 | 2 | 2019-08-02 | 2019-08-02 |
| 3 | 1 | 2019-08-11 | 2019-08-12 |
| 4 | 3 | 2019-08-24 | 2019-08-24 |
| 5 | 3 | 2019-08-21 | 2019-08-22 |
| 6 | 2 | 2019-08-11 | 2019-08-13 |
| immediate_percentage |
|---|
| 33.33 |
Out of 6 total orders, only orders with delivery_id 2 and 4 are immediate (order_date = customer_pref_delivery_date). So 2/6 = 33.33%.
| delivery_id | customer_id | order_date | customer_pref_delivery_date |
|---|---|---|---|
| 1 | 1 | 2019-08-01 | 2019-08-01 |
| 2 | 2 | 2019-08-02 | 2019-08-02 |
| immediate_percentage |
|---|
| 100 |
Both orders are immediate since order_date equals customer_pref_delivery_date for all orders. Result is 100.00%.
| delivery_id | customer_id | order_date | customer_pref_delivery_date |
|---|---|---|---|
| 1 | 1 | 2019-08-01 | 2019-08-02 |
| 2 | 2 | 2019-08-02 | 2019-08-05 |
| immediate_percentage |
|---|
| 0 |
No orders are immediate since all have different order_date and customer_pref_delivery_date. Result is 0.00%.
Constraints
-
1 ≤ delivery_id ≤ 500 -
1 ≤ customer_id ≤ 100 -
order_dateandcustomer_pref_delivery_dateare valid dates - The table contains at least one row