Write a SQL query to analyze shipment performance at Convoy by region and week, including on-time rate, average delay, and trend over time.
Use completed shipments only. A shipment is on time when it is delivered on or before its promised delivery timestamp. Average delay is measured in days, where early deliveries have negative values.
region_name, week_start, on_time_rate, average_delay_days, and on_time_rate_trendregion_name, then week_start| Column | Type | Description |
|---|---|---|
| region_idPK | INT | Unique region identifier |
| region_name | VARCHAR(100) | Convoy operating region name |
| Column | Type | Description |
|---|---|---|
| shipment_idPK | INT | Unique shipment identifier |
| region_id | INT | Region assigned to the shipment |
| promised_at | TIMESTAMP | Promised delivery timestamp |
| delivered_at | TIMESTAMP | Actual delivery timestamp, null when not delivered |