Я использую PostgreSQL 9.3.9 и есть таблица users
, которая выглядит следующим образом:Как подсчитать количество соединений между пользователем и несколькими таблицами?
user_id | email
----------------------------
1001 | [email protected]
1030 | [email protected]
2333 | [email protected]
2502 | [email protected]
3000 | [email protected]
4000 | [email protected]
4900 | [email protected]
Я тогда несколько таблиц, которые перечисляют, что пользователи подключены на различных платформах и когда они подключены. Т.е. platform_a
, platform_b
, platform_c
и т.д.
platform_a
может выглядеть следующим образом:
user_id | created_at
----------------------------
1001 | 2015-04-30
2333 | 2015-05-15
3000 | 2014-02-15
platform_b
может выглядеть следующим образом:
user_id | created_at
----------------------------
1001 | 2015-06-30
2333 | 2015-07-02
4900 | 2015-07-03
platform_c
может выглядеть следующим образом:
user_id | created_at
----------------------------
1001 | 2015-08-16
1030 | 2015-07-03
3000 | 2015-09-01
4000 | 2015-09-01
Я хочу, чтобы конечный результат, чтобы выглядеть следующим образом:
user_id | # of connections | latest created_at | connected to a | connected to b | connected to c
--------------------------------------------------------------------------------------------------
1001 | 3 | 2015-08-16 | yes | yes | yes
1030 | 1 | 2015-07-03 | no | no | yes
2333 | 2 | 2015-07-02 | yes | yes | no
2502 | 0 | | no | no | no
3000 | 2 | 2015-09-01 | yes | no | yes
4000 | 1 | 2015-09-01 | no | no | yes
4900 | 1 | 2015-07-03 | no | yes | no
Как мне это сделать?