Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- SELECT country_code,
- MIN(id),
- MAX(id),
- AVG(id)
- FROM fund
- WHERE EXTRACT(YEAR FROM CAST(founded_at AS timestamp)) IN (2010,2011,2012)
- AND id IN (SELECT id
- FROM fund
- GROUP BY id
- HAVING MIN(invested_companies) <> 0)
- GROUP BY country_code
- ORDER BY AVG(id) DESC
- LIMIT 10;
- Привет!
- Старался идти по условию задачи, срез взял за указанные годы и id фондов в подзапросе отобрал, как написано:
- "Исключите из таблицы страны с фондами, у которых минимальное число компаний, получивших инвестиции, равно нулю"
- Думаю, дело в подзапросе, никак не удается дальше пройти, помоги
- В select вместо id пробовал invested_companies - тоже не пропускает,
- с having и агг функции в нем тоже игрался, как и с порядком сортировки
- Сидел примерно час, может мало?) может баг, давно их не было)))
- Ссылка на задачу:
- https://practicum.yandex.ru/trainer/sql-data-analyst/lesson/ce01e9d1-9867-4ecc-8912-e41892e7002f/task/c6125f12-5ffa-479a-b3f5-2c1b94fd4c0b/
- Без Подзапроса если, то вот такой код
- SELECT country_code,
- MIN(invested_companies),
- MAX(invested_companies),
- AVG(invested_companies)
- FROM fund
- WHERE EXTRACT(YEAR FROM CAST(founded_at AS timestamp)) IN (2010,2011,2012)
- GROUP BY country_code
- HAVING MIN(invested_companies) <> 0
- ORDER BY AVG(invested_companies) DESC
- LIMIT 10;
- Но он тоже не проходной(
Add Comment
Please, Sign In to add comment