Spaces:
Running
Running
| # Extra Instructions | |
| ## Room type filter (exact) | |
| - Use `room_type = 'Entire home/apt'` | |
| - Use `room_type = 'Private room'` | |
| - Use `room_type = 'Shared room'` | |
| - Use `room_type = 'Hotel room'` | |
| - Text matches are **case- and punctuation-sensitive**. | |
| - Always use the exact string as shown in the dataset. | |
| ## Neighbourhood filter (exact) | |
| - Use `neighbourhood = 'Short North'` (example). | |
| - Neighbourhood names are **case-sensitive**. | |
| - Always match the spelling exactly as stored in the dataset. | |
| - Do not assume automatic capitalization or fuzzy matching. | |
| ## Price queries (nightly rate) | |
| - `price` represents the nightly rental rate in USD. | |
| - Price is stored as a whole-dollar integer. | |
| - If asking for: | |
| - “Under $X” → use `price < X` | |
| - “At most $X” → use `price <= X` | |
| - Weekly or monthly calculations must be explicitly requested. | |
| - Weekly = `price * 7` | |
| - Monthly (approximate) = `price * 30` | |
| ## Handling listings with zero reviews | |
| - If `number_of_reviews = 0`: | |
| - `last_review` is blank. | |
| - `reviews_per_month` is NULL. | |
| - Do not assume NULL `reviews_per_month` equals 0 unless explicitly stated. | |
| - When calculating averages of `reviews_per_month`, exclude NULL values unless instructed otherwise. | |
| ## Availability interpretation | |
| - `availability_365` represents the number of available days in the next 365 days. | |
| - `availability_365 = 0` may indicate: | |
| - Fully booked | |
| - Host-blocked calendar | |
| - Inactive listing | |
| - Do not automatically interpret 0 as permanently delisted unless specified. | |
| ## Host analysis (multi-listing hosts) | |
| - Use `calculated_host_listings_count` to identify hosts with multiple listings. | |
| - Multi-listing host condition: | |
| - `calculated_host_listings_count > 1` | |
| - When ranking hosts by inventory, sort by `calculated_host_listings_count` (descending). | |
| ## Aggregation intent (very important) | |
| State whether you want raw rows or an aggregate. | |
| You can copy/paste: | |
| - **Calculate total listings:** `COUNT(id)` | |
| - **Calculate average price:** `AVG(price)` | |
| - **Show rows:** return matching listings without aggregation | |
| ## Rounding and numeric handling | |
| - `price` is already stored as whole dollars. | |
| - When computing averages, results may return decimals. | |
| - Do not round unless explicitly requested. | |
| ## Verification step (recommended) | |
| If a filter may match multiple neighbourhood spellings or room types: | |
| - First show matching rows to confirm exact labels before aggregating. | |
| Example: | |
| - “Show listings where neighbourhood = 'Short North' so I can confirm label before calculating.” | |
| ## Action wording (so I take the right next step) | |
| Start your request with: | |
| - **Calculate** / **Compute** → run aggregation and return computed results | |
| - **Show** / **Filter to** → return matching listing rows | |