Yandex_Инженер_данных_DWH_в_Яндекс_Маркет
HR
Вопросы:
- разница между оконными и агрегатными функциями
- сложность сортировки
- для чего в хранилище используются hash-таблицы
Код SQL
with cte as
(
select 1 as id
union all
select 2 as id
union all
select 4 as id
union all
select 4 as id
union all
select null as id
union all
select null as id
)
select
-- count(id),
-- count(*),
-- count(1),
-- count(distinct id), -- отбрасывает null
-- sum(id), -- отбрасывает null или переобразует в 0
sum(id) over (order by id), -- null переобразует в 0
sum(id) over () -- null переобразует в 0
from cte