explain.depesz.com

PostgreSQL's explain analyze made readable

Result: X7vw

Settings
# exclusive inclusive rows x rows loops node
1. 0.000 0.000 ↓ 0.0

Sort (cost=22.77..22.77 rows=1 width=608) (actual rows= loops=)

  • Sort Key: ""Extent1"".""TenantId"", ""Extent1"".""CustomerAccountId"", (CASE WHEN (""Extent3"".""CustomerAccountId"" IS NULL) THEN NULL::integer ELSE 1 END)
2. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=1.30..22.76 rows=1 width=608) (actual rows= loops=)

3. 0.000 0.000 ↓ 0.0

Limit (cost=0.86..14.29 rows=1 width=144) (actual rows= loops=)

4. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.86..14.29 rows=1 width=144) (actual rows= loops=)

  • Join Filter: (""Extent1"".""CustomerAccountId"" = ""Extent2"".""CustomerAccountId"")
5. 0.000 0.000 ↓ 0.0

Index Scan using ix_account_tenantid_customeraccountid on ""Account"" ""Extent1"" (cost=0.43..7.15 rows=1 width=144) (actual rows= loops=)

  • Index Cond: (""TenantId"" = 28,218)
  • Filter: ""IsActive"
6. 0.000 0.000 ↓ 0.0

Index Scan using ix_user_tenantid_customeraccountid on ""User"" ""Extent2"" (cost=0.43..7.12 rows=1 width=8) (actual rows= loops=)

  • Index Cond: (""TenantId"" = 28,218)
  • Filter: (""IsActive"" AND ((""UserId"")::text = 'eeca7dc3931445b1847c9af127f021a3'::text))
7. 0.000 0.000 ↓ 0.0

Index Scan using ix_user_tenantid_customeraccountid on ""User"" ""Extent3"" (cost=0.43..8.45 rows=1 width=460) (actual rows= loops=)

  • Index Cond: ((""Extent1"".""TenantId"" = ""TenantId"") AND (""Extent1"".""CustomerAccountId"" = ""CustomerAccountId""))