explain.depesz.com

PostgreSQL's explain analyze made readable

Result: rUn4

Settings
# exclusive inclusive rows x rows loops node
1. 211.534 831.300 ↑ 1.0 217,966 1

Hash Join (cost=65.45..9,479.87 rows=225,582 width=6,064) (actual time=0.632..831.300 rows=217,966 loops=1)

  • Output: app_usages.id, app_usages.app_id, app_usages.network_id, app_usages.rx_delta, app_usages.tx_delta, app_usages."timestamp", app_usages.updated_at, app_usages.device_id, app_usages.network_name_id, app_usages.roaming, app_usages.rx_delta_roaming, app_usages.tx_delta_roaming, app_usages.pid, app_usages.uid, app_usages.mobile_rx_bytes, app_usages.mobile_tx_bytes, app_usages.last_mobile_rx_bytes, app_usages.last_mobile_tx_bytes, app_usages.total_rx_bytes, app_usages.total_tx_bytes, app_usages.last_total_rx_bytes, app_usages.last_total_tx_bytes, app_usages.uid_rx_bytes, app_usages.uid_tx_bytes, app_usages.last_uid_rx_bytes, app_usages.last_uid_tx_bytes, app_usages.reported_by_pid, app_usages.total_bytes, app_usages.sim_mnc_id, app_usages.tariff_country_id, app_usages.tariff_id, app_usages.app_version, app_usages.comparison_mobile_rx_total, app_usages.comparison_mobile_tx_total, app_usages.comparison_wifi_rx_total, app_usages.comparison_wifi_tx_total, app_usages.mvi_mobile_rx_total, app_usages.mvi_mobile_tx_total, app_usages.mvi_wifi_rx_total, app_usages.mvi_wifi_tx_total, app_usages.comparison_rx_total, app_usages.comparison_tx_total, app_usages.filter_date, app_usages.network_type_code, app_usages.is_roaming, app_usages.carrier_account_id, app_usages.device_usage_id, network_names.id, network_names.user_id, network_names.name, network_names.created_at, network_names.updated_at, network_names.network_type_id, network_names.mnc_id, carrier_accounts.id, carrier_accounts.user_id, carrier_accounts.device_id, carrier_accounts.plan_id, carrier_accounts.phone_number, carrier_accounts.sim_country, carrier_accounts.sim_carrier, carrier_accounts.sim_carrier_id, carrier_accounts.sim_serial_number, carrier_accounts.sim_state, carrier_accounts.carrier_id, carrier_accounts.contract_start_date, carrier_accounts.monitor, carrier_accounts.time_zone, carrier_accounts.last_report, carrier_accounts.name, apps.id, apps.created_at, apps.updated_at, apps.user_id, apps.category_id, apps.app_detail_id, apps.system, apps.uid, users.id, users.company_id, users.name, users.created_at, users.updated_at, users.email, users.crypted_password, users.salt, users.remember_me_token, users.remember_me_token_expires_at, users.reset_password_token, users.reset_password_token_expires_at, users.reset_password_email_sent_at, users.last_device_id, users.role, users.last_login_at, users.last_logout_at, users.last_activity_at, users.last_login_from_ip_address, users.employee_number, users.phone_number, users.department, users.cost_center, users.contract_start_date, users.tos_agreed_at, users.email_downcase, users.channel_partner_id, users.invite_emailed_date, users.time_zone, users.last_carrier_account_id, users.onboard_status, users.type_of, users.locale
  • Inner Unique: true
  • Hash Cond: (apps.user_id = users.id)
  • Buffers: shared hit=4617
2. 163.552 619.752 ↑ 1.0 217,966 1

Hash Join (cost=64.09..8,729.50 rows=225,582 width=2,701) (actual time=0.597..619.752 rows=217,966 loops=1)

  • Output: app_usages.id, app_usages.app_id, app_usages.network_id, app_usages.rx_delta, app_usages.tx_delta, app_usages."timestamp", app_usages.updated_at, app_usages.device_id, app_usages.network_name_id, app_usages.roaming, app_usages.rx_delta_roaming, app_usages.tx_delta_roaming, app_usages.pid, app_usages.uid, app_usages.mobile_rx_bytes, app_usages.mobile_tx_bytes, app_usages.last_mobile_rx_bytes, app_usages.last_mobile_tx_bytes, app_usages.total_rx_bytes, app_usages.total_tx_bytes, app_usages.last_total_rx_bytes, app_usages.last_total_tx_bytes, app_usages.uid_rx_bytes, app_usages.uid_tx_bytes, app_usages.last_uid_rx_bytes, app_usages.last_uid_tx_bytes, app_usages.reported_by_pid, app_usages.total_bytes, app_usages.sim_mnc_id, app_usages.tariff_country_id, app_usages.tariff_id, app_usages.app_version, app_usages.comparison_mobile_rx_total, app_usages.comparison_mobile_tx_total, app_usages.comparison_wifi_rx_total, app_usages.comparison_wifi_tx_total, app_usages.mvi_mobile_rx_total, app_usages.mvi_mobile_tx_total, app_usages.mvi_wifi_rx_total, app_usages.mvi_wifi_tx_total, app_usages.comparison_rx_total, app_usages.comparison_tx_total, app_usages.filter_date, app_usages.network_type_code, app_usages.is_roaming, app_usages.carrier_account_id, app_usages.device_usage_id, network_names.id, network_names.user_id, network_names.name, network_names.created_at, network_names.updated_at, network_names.network_type_id, network_names.mnc_id, carrier_accounts.id, carrier_accounts.user_id, carrier_accounts.device_id, carrier_accounts.plan_id, carrier_accounts.phone_number, carrier_accounts.sim_country, carrier_accounts.sim_carrier, carrier_accounts.sim_carrier_id, carrier_accounts.sim_serial_number, carrier_accounts.sim_state, carrier_accounts.carrier_id, carrier_accounts.contract_start_date, carrier_accounts.monitor, carrier_accounts.time_zone, carrier_accounts.last_report, carrier_accounts.name, apps.id, apps.created_at, apps.updated_at, apps.user_id, apps.category_id, apps.app_detail_id, apps.system, apps.uid
  • Inner Unique: true
  • Hash Cond: (app_usages.app_id = apps.id)
  • Buffers: shared hit=4616
3. 158.226 455.729 ↑ 1.0 221,760 1

Hash Join (cost=29.45..8,100.46 rows=225,582 width=2,664) (actual time=0.106..455.729 rows=221,760 loops=1)

  • Output: app_usages.id, app_usages.app_id, app_usages.network_id, app_usages.rx_delta, app_usages.tx_delta, app_usages."timestamp", app_usages.updated_at, app_usages.device_id, app_usages.network_name_id, app_usages.roaming, app_usages.rx_delta_roaming, app_usages.tx_delta_roaming, app_usages.pid, app_usages.uid, app_usages.mobile_rx_bytes, app_usages.mobile_tx_bytes, app_usages.last_mobile_rx_bytes, app_usages.last_mobile_tx_bytes, app_usages.total_rx_bytes, app_usages.total_tx_bytes, app_usages.last_total_rx_bytes, app_usages.last_total_tx_bytes, app_usages.uid_rx_bytes, app_usages.uid_tx_bytes, app_usages.last_uid_rx_bytes, app_usages.last_uid_tx_bytes, app_usages.reported_by_pid, app_usages.total_bytes, app_usages.sim_mnc_id, app_usages.tariff_country_id, app_usages.tariff_id, app_usages.app_version, app_usages.comparison_mobile_rx_total, app_usages.comparison_mobile_tx_total, app_usages.comparison_wifi_rx_total, app_usages.comparison_wifi_tx_total, app_usages.mvi_mobile_rx_total, app_usages.mvi_mobile_tx_total, app_usages.mvi_wifi_rx_total, app_usages.mvi_wifi_tx_total, app_usages.comparison_rx_total, app_usages.comparison_tx_total, app_usages.filter_date, app_usages.network_type_code, app_usages.is_roaming, app_usages.carrier_account_id, app_usages.device_usage_id, network_names.id, network_names.user_id, network_names.name, network_names.created_at, network_names.updated_at, network_names.network_type_id, network_names.mnc_id, carrier_accounts.id, carrier_accounts.user_id, carrier_accounts.device_id, carrier_accounts.plan_id, carrier_accounts.phone_number, carrier_accounts.sim_country, carrier_accounts.sim_carrier, carrier_accounts.sim_carrier_id, carrier_accounts.sim_serial_number, carrier_accounts.sim_state, carrier_accounts.carrier_id, carrier_accounts.contract_start_date, carrier_accounts.monitor, carrier_accounts.time_zone, carrier_accounts.last_report, carrier_accounts.name
  • Inner Unique: true
  • Hash Cond: (app_usages.carrier_account_id = carrier_accounts.id)
  • Buffers: shared hit=4606
4. 198.691 297.476 ↑ 1.0 221,760 1

Hash Join (cost=13.15..7,483.05 rows=225,582 width=2,403) (actual time=0.062..297.476 rows=221,760 loops=1)

  • Output: app_usages.id, app_usages.app_id, app_usages.network_id, app_usages.rx_delta, app_usages.tx_delta, app_usages."timestamp", app_usages.updated_at, app_usages.device_id, app_usages.network_name_id, app_usages.roaming, app_usages.rx_delta_roaming, app_usages.tx_delta_roaming, app_usages.pid, app_usages.uid, app_usages.mobile_rx_bytes, app_usages.mobile_tx_bytes, app_usages.last_mobile_rx_bytes, app_usages.last_mobile_tx_bytes, app_usages.total_rx_bytes, app_usages.total_tx_bytes, app_usages.last_total_rx_bytes, app_usages.last_total_tx_bytes, app_usages.uid_rx_bytes, app_usages.uid_tx_bytes, app_usages.last_uid_rx_bytes, app_usages.last_uid_tx_bytes, app_usages.reported_by_pid, app_usages.total_bytes, app_usages.sim_mnc_id, app_usages.tariff_country_id, app_usages.tariff_id, app_usages.app_version, app_usages.comparison_mobile_rx_total, app_usages.comparison_mobile_tx_total, app_usages.comparison_wifi_rx_total, app_usages.comparison_wifi_tx_total, app_usages.mvi_mobile_rx_total, app_usages.mvi_mobile_tx_total, app_usages.mvi_wifi_rx_total, app_usages.mvi_wifi_tx_total, app_usages.comparison_rx_total, app_usages.comparison_tx_total, app_usages.filter_date, app_usages.network_type_code, app_usages.is_roaming, app_usages.carrier_account_id, app_usages.device_usage_id, network_names.id, network_names.user_id, network_names.name, network_names.created_at, network_names.updated_at, network_names.network_type_id, network_names.mnc_id
  • Inner Unique: true
  • Hash Cond: (app_usages.network_name_id = network_names.id)
  • Buffers: shared hit=4605
5. 98.765 98.765 ↑ 1.0 221,760 1

Seq Scan on public.app_usages (cost=0.00..6,859.82 rows=225,582 width=1,855) (actual time=0.029..98.765 rows=221,760 loops=1)

  • Output: app_usages.id, app_usages.app_id, app_usages.network_id, app_usages.rx_delta, app_usages.tx_delta, app_usages."timestamp", app_usages.updated_at, app_usages.device_id, app_usages.network_name_id, app_usages.roaming, app_usages.rx_delta_roaming, app_usages.tx_delta_roaming, app_usages.pid, app_usages.uid, app_usages.mobile_rx_bytes, app_usages.mobile_tx_bytes, app_usages.last_mobile_rx_bytes, app_usages.last_mobile_tx_bytes, app_usages.total_rx_bytes, app_usages.total_tx_bytes, app_usages.last_total_rx_bytes, app_usages.last_total_tx_bytes, app_usages.uid_rx_bytes, app_usages.uid_tx_bytes, app_usages.last_uid_rx_bytes, app_usages.last_uid_tx_bytes, app_usages.reported_by_pid, app_usages.total_bytes, app_usages.sim_mnc_id, app_usages.tariff_country_id, app_usages.tariff_id, app_usages.app_version, app_usages.comparison_mobile_rx_total, app_usages.comparison_mobile_tx_total, app_usages.comparison_wifi_rx_total, app_usages.comparison_wifi_tx_total, app_usages.mvi_mobile_rx_total, app_usages.mvi_mobile_tx_total, app_usages.mvi_wifi_rx_total, app_usages.mvi_wifi_tx_total, app_usages.comparison_rx_total, app_usages.comparison_tx_total, app_usages.filter_date, app_usages.network_type_code, app_usages.is_roaming, app_usages.carrier_account_id, app_usages.device_usage_id
  • Buffers: shared hit=4604
6. 0.006 0.020 ↑ 4.7 30 1

Hash (cost=11.40..11.40 rows=140 width=548) (actual time=0.020..0.020 rows=30 loops=1)

  • Output: network_names.id, network_names.user_id, network_names.name, network_names.created_at, network_names.updated_at, network_names.network_type_id, network_names.mnc_id
  • Buckets: 1024 Batches: 1 Memory Usage: 11kB
  • Buffers: shared hit=1
7. 0.014 0.014 ↑ 4.7 30 1

Seq Scan on public.network_names (cost=0.00..11.40 rows=140 width=548) (actual time=0.011..0.014 rows=30 loops=1)

  • Output: network_names.id, network_names.user_id, network_names.name, network_names.created_at, network_names.updated_at, network_names.network_type_id, network_names.mnc_id
  • Buffers: shared hit=1
8. 0.006 0.027 ↑ 9.3 30 1

Hash (cost=12.80..12.80 rows=280 width=261) (actual time=0.027..0.027 rows=30 loops=1)

  • Output: carrier_accounts.id, carrier_accounts.user_id, carrier_accounts.device_id, carrier_accounts.plan_id, carrier_accounts.phone_number, carrier_accounts.sim_country, carrier_accounts.sim_carrier, carrier_accounts.sim_carrier_id, carrier_accounts.sim_serial_number, carrier_accounts.sim_state, carrier_accounts.carrier_id, carrier_accounts.contract_start_date, carrier_accounts.monitor, carrier_accounts.time_zone, carrier_accounts.last_report, carrier_accounts.name
  • Buckets: 1024 Batches: 1 Memory Usage: 13kB
  • Buffers: shared hit=1
9. 0.021 0.021 ↑ 9.3 30 1

Seq Scan on public.carrier_accounts (cost=0.00..12.80 rows=280 width=261) (actual time=0.018..0.021 rows=30 loops=1)

  • Output: carrier_accounts.id, carrier_accounts.user_id, carrier_accounts.device_id, carrier_accounts.plan_id, carrier_accounts.phone_number, carrier_accounts.sim_country, carrier_accounts.sim_carrier, carrier_accounts.sim_carrier_id, carrier_accounts.sim_serial_number, carrier_accounts.sim_state, carrier_accounts.carrier_id, carrier_accounts.contract_start_date, carrier_accounts.monitor, carrier_accounts.time_zone, carrier_accounts.last_report, carrier_accounts.name
  • Buffers: shared hit=1
10. 0.213 0.471 ↑ 1.0 1,095 1

Hash (cost=20.95..20.95 rows=1,095 width=37) (actual time=0.471..0.471 rows=1,095 loops=1)

  • Output: apps.id, apps.created_at, apps.updated_at, apps.user_id, apps.category_id, apps.app_detail_id, apps.system, apps.uid
  • Buckets: 2048 Batches: 1 Memory Usage: 89kB
  • Buffers: shared hit=10
11. 0.258 0.258 ↑ 1.0 1,095 1

Seq Scan on public.apps (cost=0.00..20.95 rows=1,095 width=37) (actual time=0.013..0.258 rows=1,095 loops=1)

  • Output: apps.id, apps.created_at, apps.updated_at, apps.user_id, apps.category_id, apps.app_detail_id, apps.system, apps.uid
  • Buffers: shared hit=10
12. 0.006 0.014 ↑ 1.0 16 1

Hash (cost=1.16..1.16 rows=16 width=3,363) (actual time=0.014..0.014 rows=16 loops=1)

  • Output: users.id, users.company_id, users.name, users.created_at, users.updated_at, users.email, users.crypted_password, users.salt, users.remember_me_token, users.remember_me_token_expires_at, users.reset_password_token, users.reset_password_token_expires_at, users.reset_password_email_sent_at, users.last_device_id, users.role, users.last_login_at, users.last_logout_at, users.last_activity_at, users.last_login_from_ip_address, users.employee_number, users.phone_number, users.department, users.cost_center, users.contract_start_date, users.tos_agreed_at, users.email_downcase, users.channel_partner_id, users.invite_emailed_date, users.time_zone, users.last_carrier_account_id, users.onboard_status, users.type_of, users.locale
  • Buckets: 1024 Batches: 1 Memory Usage: 12kB
  • Buffers: shared hit=1
13. 0.008 0.008 ↑ 1.0 16 1

Seq Scan on public.users (cost=0.00..1.16 rows=16 width=3,363) (actual time=0.007..0.008 rows=16 loops=1)

  • Output: users.id, users.company_id, users.name, users.created_at, users.updated_at, users.email, users.crypted_password, users.salt, users.remember_me_token, users.remember_me_token_expires_at, users.reset_password_token, users.reset_password_token_expires_at, users.reset_password_email_sent_at, users.last_device_id, users.role, users.last_login_at, users.last_logout_at, users.last_activity_at, users.last_login_from_ip_address, users.employee_number, users.phone_number, users.department, users.cost_center, users.contract_start_date, users.tos_agreed_at, users.email_downcase, users.channel_partner_id, users.invite_emailed_date, users.time_zone, users.last_carrier_account_id, users.onboard_status, users.type_of, users.locale
  • Buffers: shared hit=1
Planning time : 2.071 ms