Immediate Food Delivery II — LeetCode 1174 Python Solution
MediumDatabase
- Problem
- #1174
- Reading time
- 3 min
- Source
- leetcode.com
Table schema
SQL
Table: Delivery +-----------------------------+---------+ | Column Name | Type | +-----------------------------+---------+ | delivery_id | int | | customer_id | int | | order_date | date | | customer_pref_delivery_date | date | +-----------------------------+---------+ delivery_id is the column of unique values of this table. The table holds information about food delivery to customers that make orders at some date and specify a preferred delivery date (on the same order date or after it).Example
SQL
+-----------------------------+---------+
| Column Name | Type |
+-----------------------------+---------+
| delivery_id | int |
| customer_id | int |
| order_date | date |
| customer_pref_delivery_date | date |
+-----------------------------+---------+
delivery_id is the column of unique values of this table.
The table holds information about food delivery to customers that make orders at some date and specify a preferred delivery date (on the same order date or after it).Python solution
Python
import duckdb
import pandas as pd
def solution(delivery: pd.DataFrame) -> pd.DataFrame:
con = duckdb.connect()
con.register("Delivery", delivery)
return con.execute("""SELECT
ROUND(AVG(order_date = customer_pref_delivery_date) * 100, 2) AS immediate_percentage
FROM Delivery
WHERE
(customer_id, order_date) IN (
SELECT customer_id, MIN(order_date)
FROM Delivery
GROUP BY 1
);""").df()Complexity
| Measure | Complexity |
|---|---|
| Time | O(n log n) (typical) |
| Space | O(n) auxiliary |
Related problems
Frequently asked questions
- How hard is LeetCode 1174. Immediate Food Delivery II?
- LeetCode 1174. Immediate Food Delivery II is rated Medium on LeetCode.
- What topics does LeetCode 1174. Immediate Food Delivery II cover?
- LeetCode 1174. Immediate Food Delivery II is tagged Database on LeetCode.