explain.depesz.com

PostgreSQL's explain analyze made readable

Result: eHZ5 : SELECT COALESCE(t2.VALUE, mv.mmsVersion) as mmsVersion, translated.date, translated.operatingSystemVersion, sum(translated.count) as count FROM (SELECT customerIdent, date, COALESCE(t.VALUE, os.operatingSystemVersion) as operatingSystemVersion, sum(count) as count FROM operatingSystemServer os LEFT JOIN translations t ON t.tableName = 'operatingSystemServer' AND t.key = os.operatingSystemVersion GROUP BY customerIdent, t.value, operatingSystemVersion, date) as translated LEFT JOIN mmsVersionServer mv ON mv.customerIdent = translated.customerIdent AND mv.date = translated.date LEFT JOIN translations t2 ON t2.tableName = 'mmsVersionServer' AND t2.key = mv.mmsVersion GROUP BY COALESCE(t2.VALUE, mv.mmsVersion), translated.date, translated.operatingSystemVersion;

Settings
# exclusive inclusive rows x rows loops node
1. 0.158 55.012 ↑ 11.4 71 1

Sort (cost=146.63..148.65 rows=808 width=138) (actual time=55.009..55.012 rows=71 loops=1)

  • Sort Key: n.nspname, p.proname, (pg_get_function_arguments(p.oid))
  • Sort Method: quicksort Memory: 43kB
2. 1.378 54.854 ↑ 11.4 71 1

Hash Join (cost=1.14..107.61 rows=808 width=138) (actual time=42.495..54.854 rows=71 loops=1)

  • Hash Cond: (p.pronamespace = n.oid)
3. 53.465 53.465 ↓ 3.0 2,402 1

Seq Scan on pg_proc p (cost=0.00..89.30 rows=808 width=78) (actual time=0.052..53.465 rows=2,402 loops=1)

  • Filter: pg_function_is_visible(oid)
4. 0.004 0.011 ↑ 1.0 4 1

Hash (cost=1.09..1.09 rows=4 width=68) (actual time=0.011..0.011 rows=4 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 1kB
5. 0.007 0.007 ↑ 1.0 4 1

Seq Scan on pg_namespace n (cost=0.00..1.09 rows=4 width=68) (actual time=0.005..0.007 rows=4 loops=1)

  • Filter: ((nspname <> 'pg_catalog'::name) AND (nspname <> 'information_schema'::name))