Priskategori utan CASE eller IF (Yandex Praktikum)
En tränarmodul i Yandex Praktikum kör ett miniprojekt om en pappershandel. Studenterna får en orderkatalog och ska avgöra vilken prisnivå varje artikel tillhör. Villkoret: inget CASE, inget IF — kategorin måste komma från en intervall-JOIN.
Tre tabeller:
- orders(order_id, last_name, product, ordered_at) — ordered_at TIMESTAMPTZ
- prices(product, price) — price NUMERIC(15,2)
- categories(category, price_range) — category VARCHAR(20), price_range NUMRANGE med gränser [limit_1, limit_2)
För varje order, hämta artikelns pris och den kategori vars price_range innehåller det. Kom ihåg: inget CASE, inget IF — endast JOIN.
Exempel på förväntad utdata
Så här ser ett korrekt svar ut — radantalet är dess eget, det behöver inte matcha schematabellerna.
| price | product | category | last_name |
|---|---|---|---|
| 120.00 | Notebook | cheap | Ivanova |
| 15.00 | Pen | cheap | Petrov |
| 3500.00 | Backpack | medium | Sokolova |
Logga in för att se historik över inskick
Logga inLogga in för att använda AI-mentorn
Logga in