Given a log of user search sessions and conversion events, write a query to find the top three most common search filter combinations that lead to no results.
Use the search_sessions and conversion_events tables. Treat NULL filter values as an explicit filter value, and count conversion events occurring at or after the related search.
filter_combination, no_result_sessions, and conversion_events.results_count is zero, return at most three combinations, and sort by no_result_sessions descending, then filter_combination ascending.| Column | Type | Description |
|---|---|---|
| session_idPK | INT | Unique search session identifier |
| user_id | INT | User who performed the search |
| searched_at | TIMESTAMP | Timestamp when the search was performed |
| room_type | VARCHAR(50) | Requested Airbnb room type |
| min_price | INT | Minimum nightly price filter |
| max_price | INT | Maximum nightly price filter |
| guests | INT | Requested guest count |
| results_count | INT | Number of listings returned |
| Column | Type | Description |
|---|---|---|
| event_idPK | INT | Unique conversion event identifier |
| session_id | INT | Search session associated with the event |
| event_type | VARCHAR(30) | Conversion event type |
| event_ts | TIMESTAMP | Timestamp when the conversion occurred |