У меня есть таблица, которая выглядит следующим образом:
app_id supplier_reached creation_date platform
10001 1 9/11/2018 iOS
10001 2 9/18/2018 iOS
10002 1 5/16/2018 android
10003 1 5/6/2018 android
10004 1 10/1/2018 android
10004 1 2/3/2018 android
10004 2 2/2/2018 web
10005 4 1/5/2018 web
10005 2 5/1/2018 android
10006 3 10/1/2018 iOS
10005 4 1/1/2018 iOS
Цель состоит в том, чтобы найти уникальное число app_id, представленных в месяц.
Если я просто сделаю count(distinct app_id)
Я получу следующие результаты:
Group by month count(app number)
Jan 1
Feb 1
may 3
september 1
october 2
Однако приложение считается уникальным и на основе комбинации других полей.Например, для января месяца значение the app_id
является одинаковым, однако комбинация app_id
, supplier_reached
и platform
показывает разные значения, и, следовательно, app_id
должен учитываться дважды.Следуя той же схеме, желаемый результат должен быть:
Group by month Desired answer
Jan 2
Feb 2
may 3
september 2
october 2
Наконец, в таблице может быть много других столбцов, которые могут или не могут способствовать уникальности приложения.
Есть ли способ сделать этот тип подсчета в SQL?
Я использую Redshift.