explain.depesz.com

PostgreSQL's explain analyze made readable

Result: gIeW

Settings
# exclusive inclusive rows x rows loops node
1. 0.092 3,672.047 ↑ 678.1 33 1

Hash Left Join (cost=2,244,663.20..2,245,230.74 rows=22,378 width=403) (actual time=3,495.330..3,672.047 rows=33 loops=1)

  • Hash Cond: ((more_house.bz)::text = ("*SELECT* 1".bz)::text)
2.          

CTE more_house

3. 168.379 771.510 ↑ 678.1 33 1

GroupAggregate (cost=18,881.44..21,510.89 rows=22,378 width=136) (actual time=595.016..771.510 rows=33 loops=1)

  • Group Key: (CASE WHEN (substr((COALESCE(bk_3.certid, ac_3.userid, ac_3.account))::text, 18, 1) = 'x'::text) THEN ((substr((COALESCE(bk_3.certid, ac_3.userid, ac_3.account))::text, 1, 17) || 'X'::text))::character varying ELSE COALESCE(bk_3.certid, ac_3.userid, ac_3.account) END), (substr((hi_1.xzqhdm)::text, 1, 6))
  • Filter: (count(DISTINCT lockkeyinfo.lockid) >= 5)
  • Rows Removed by Filter: 50657
4. 78.844 603.131 ↑ 1.2 55,126 1

Sort (cost=18,881.44..19,049.27 rows=67,135 width=139) (actual time=592.943..603.131 rows=55,126 loops=1)

  • Sort Key: (CASE WHEN (substr((COALESCE(bk_3.certid, ac_3.userid, ac_3.account))::text, 18, 1) = 'x'::text) THEN ((substr((COALESCE(bk_3.certid, ac_3.userid, ac_3.account))::text, 1, 17) || 'X'::text))::character varying ELSE COALESCE(bk_3.certid, ac_3.userid, ac_3.account) END), (substr((hi_1.xzqhdm)::text, 1, 6))
  • Sort Method: quicksort Memory: 9289kB
5. 72.482 524.287 ↑ 1.2 55,126 1

Hash Left Join (cost=6,536.67..13,498.96 rows=67,135 width=139) (actual time=162.928..524.287 rows=55,126 loops=1)

  • Hash Cond: (ys_1."管理单位代码_id" = gl_1.id)
  • Filter: (CASE WHEN (length((hi_1.xzqhdm)::text) = 9) THEN gl_1."代码" WHEN (length((hi_1.xzqhdm)::text) = 12) THEN gl_1."上级单位代码" ELSE NULL::text END IS NOT NULL)
  • Rows Removed by Filter: 5851
6. 32.165 451.260 ↑ 1.1 60,977 1

Hash Left Join (cost=6,507.43..12,452.23 rows=67,471 width=139) (actual time=162.363..451.260 rows=60,977 loops=1)

  • Hash Cond: ((hi_1.xzqhdm)::text = xz_1."代码")
7. 40.782 417.318 ↑ 1.1 60,977 1

Hash Join (cost=6,434.41..11,456.16 rows=67,471 width=123) (actual time=160.568..417.318 rows=60,977 loops=1)

  • Hash Cond: ((lockinfo.houseid)::text = (hi_1.houseid)::text)
8. 40.812 317.349 ↑ 1.1 60,989 1

Hash Join (cost=4,409.26..9,253.57 rows=67,588 width=143) (actual time=101.257..317.349 rows=60,989 loops=1)

  • Hash Cond: ((lockkeyinfo.lockid)::text = (lockinfo.lockid)::text)
9. 33.095 249.135 ↑ 1.1 60,989 1

Hash Left Join (cost=3,152.30..7,819.19 rows=67,588 width=111) (actual time=73.800..249.135 rows=60,989 loops=1)

  • Hash Cond: (((lockkeyinfo.lockid)::text = (bk_3.lockid)::text) AND ((COALESCE(lockkeyinfo.keyholder, lockkeyinfo.useraccount))::text = (bk_3.bluekeyaccount)::text))
  • Filter: (COALESCE(bk_3.certid, ac_3.userid, ac_3.account) IS NOT NULL)
  • Rows Removed by Filter: 1700
10. 50.611 213.542 ↑ 1.1 62,689 1

Hash Left Join (cost=3,049.58..7,359.84 rows=67,928 width=106) (actual time=71.272..213.542 rows=62,689 loops=1)

  • Hash Cond: ((COALESCE(lockkeyinfo.keyholder, lockkeyinfo.useraccount))::text = (ac_3.account)::text)
11. 92.098 92.098 ↑ 1.1 62,689 1

Seq Scan on lockkeyinfo (cost=0.00..4,131.94 rows=67,928 width=76) (actual time=0.024..92.098 rows=62,689 loops=1)

  • Filter: ((keytype = ANY ('{0,2}'::integer[])) AND (userrole <> 255) AND (keystate = 0) AND ((expireddate)::text >= (timezone('PRC'::text, now()))::text))
  • Rows Removed by Filter: 58716
12. 30.179 70.833 ↑ 1.0 104,505 1

Hash (cost=1,732.59..1,732.59 rows=105,359 width=30) (actual time=70.832..70.833 rows=104,505 loops=1)

  • Buckets: 131072 Batches: 1 Memory Usage: 7354kB
13. 40.654 40.654 ↑ 1.0 104,505 1

Seq Scan on appuseraccount ac_3 (cost=0.00..1,732.59 rows=105,359 width=30) (actual time=0.007..40.654 rows=104,505 loops=1)

14. 1.275 2.498 ↓ 1.0 3,588 1

Hash (cost=49.25..49.25 rows=3,565 width=67) (actual time=2.497..2.498 rows=3,588 loops=1)

  • Buckets: 4096 Batches: 1 Memory Usage: 372kB
15. 1.223 1.223 ↓ 1.0 3,588 1

Seq Scan on bluekeyuserinfo bk_3 (cost=0.00..49.25 rows=3,565 width=67) (actual time=0.008..1.223 rows=3,588 loops=1)

16. 11.529 27.402 ↑ 1.0 47,590 1

Hash (cost=661.48..661.48 rows=47,638 width=51) (actual time=27.402..27.402 rows=47,590 loops=1)

  • Buckets: 65536 Batches: 1 Memory Usage: 4438kB
17. 15.873 15.873 ↑ 1.0 47,590 1

Seq Scan on lockinfo (cost=0.00..661.48 rows=47,638 width=51) (actual time=0.014..15.873 rows=47,590 loops=1)

18. 21.268 59.187 ↓ 1.0 70,443 1

Hash (cost=1,150.68..1,150.68 rows=69,958 width=45) (actual time=59.186..59.187 rows=70,443 loops=1)

  • Buckets: 131072 Batches: 1 Memory Usage: 6451kB
19. 37.919 37.919 ↓ 1.0 70,443 1

Seq Scan on houseinfo hi_1 (cost=0.00..1,150.68 rows=69,958 width=45) (actual time=0.020..37.919 rows=70,443 loops=1)

20. 0.392 1.777 ↓ 1.0 1,563 1

Hash (cost=53.53..53.53 rows=1,559 width=28) (actual time=1.777..1.777 rows=1,563 loops=1)

  • Buckets: 2048 Batches: 1 Memory Usage: 105kB
21. 0.600 1.385 ↓ 1.0 1,563 1

Hash Right Join (cost=37.28..53.53 rows=1,559 width=28) (actual time=0.645..1.385 rows=1,563 loops=1)

  • Hash Cond: (ys_1."行政区划_id" = xz_1.id)
22. 0.159 0.159 ↓ 1.1 1,280 1

Seq Scan on "行政区划与管理单位代码映射" ys_1 (cost=0.00..13.11 rows=1,191 width=32) (actual time=0.005..0.159 rows=1,280 loops=1)

23. 0.339 0.626 ↑ 1.0 1,546 1

Hash (cost=17.79..17.79 rows=1,559 width=28) (actual time=0.626..0.626 rows=1,546 loops=1)

  • Buckets: 2048 Batches: 1 Memory Usage: 108kB
24. 0.287 0.287 ↑ 1.0 1,546 1

Seq Scan on "行政区划代码" xz_1 (cost=0.00..17.79 rows=1,559 width=28) (actual time=0.008..0.287 rows=1,546 loops=1)

25. 0.298 0.545 ↑ 1.0 1,202 1

Hash (cost=14.22..14.22 rows=1,202 width=44) (actual time=0.545..0.545 rows=1,202 loops=1)

  • Buckets: 2048 Batches: 1 Memory Usage: 106kB
26. 0.247 0.247 ↑ 1.0 1,202 1

Seq Scan on "管理单位代码" gl_1 (cost=0.00..14.22 rows=1,202 width=44) (actual time=0.006..0.247 rows=1,202 loops=1)

27. 0.078 1,552.397 ↑ 678.1 33 1

Hash Join (cost=23,797.16..24,304.71 rows=22,378 width=264) (actual time=1,375.730..1,552.397 rows=33 loops=1)

  • Hash Cond: ((more_house.bz)::text = (_user_info.bz)::text)
28. 771.624 771.624 ↑ 678.1 33 1

CTE Scan on more_house (cost=0.00..447.56 rows=22,378 width=136) (actual time=595.020..771.624 rows=33 loops=1)

29. 26.092 780.695 ↓ 514.3 102,860 1

Hash (cost=23,794.66..23,794.66 rows=200 width=128) (actual time=780.695..780.695 rows=102,860 loops=1)

  • Buckets: 131072 (originally 1024) Batches: 1 (originally 1) Memory Usage: 15197kB
30. 26.292 754.603 ↓ 514.3 102,860 1

Unique (cost=23,265.87..23,792.66 rows=200 width=128) (actual time=708.056..754.603 rows=102,860 loops=1)

31. 159.856 728.311 ↓ 1.0 107,061 1

Sort (cost=23,265.87..23,529.27 rows=105,359 width=128) (actual time=708.053..728.311 rows=107,061 loops=1)

  • Sort Key: _user_info.bz, _user_info.authstate
  • Sort Method: quicksort Memory: 27140kB
32. 16.271 568.455 ↓ 1.0 107,061 1

Subquery Scan on _user_info (cost=10,261.96..14,476.32 rows=105,359 width=128) (actual time=505.122..568.455 rows=107,061 loops=1)

33. 148.861 552.184 ↓ 1.0 107,061 1

HashAggregate (cost=10,261.96..13,422.73 rows=105,359 width=274) (actual time=505.120..552.184 rows=107,061 loops=1)

  • Group Key: CASE WHEN (substr(((COALESCE(bk.certid, ac.userid, ac.account)))::text, 18, 1) = 'x'::text) THEN ((substr(((COALESCE(bk.certid, ac.userid, ac.account)))::text, 1, 17) || 'X'::text))::character varying ELSE (COALESCE(bk.certid, ac.userid, ac.account)) END, ac.account, CASE WHEN (substr(((COALESCE(bk.certid, ac.userid)))::text, 18, 1) = 'x'::text) THEN ((substr(((COALESCE(bk.certid, ac.userid)))::text, 1, 17) || 'X'::text))::character varying ELSE (COALESCE(bk.certid, ac.userid)) END, max((COALESCE(ac.username, bk.username))::text), max((COALESCE(ac.headpicture, bk.certfrontpic))::text), bk.lockid, bk.bluekeyaccount, max((ac.authstate)::text)
34. 235.786 403.323 ↓ 1.0 107,061 1

HashAggregate (cost=4,994.01..8,154.78 rows=105,359 width=274) (actual time=266.971..403.323 rows=107,061 loops=1)

  • Group Key: COALESCE(bk.certid, ac.userid, ac.account), bk.bluekeyaccount, ac.account, COALESCE(bk.certid, ac.userid)
35. 56.777 167.537 ↓ 1.0 107,061 1

Hash Full Join (cost=3,049.58..3,150.23 rows=105,359 width=356) (actual time=110.348..167.537 rows=107,061 loops=1)

  • Hash Cond: ((bk.certid)::text = (ac.userid)::text)
36. 0.828 0.828 ↓ 1.0 3,588 1

Seq Scan on bluekeyuserinfo bk (cost=0.00..49.25 rows=3,565 width=168) (actual time=0.008..0.828 rows=3,588 loops=1)

37. 62.982 109.932 ↑ 1.0 104,505 1

Hash (cost=1,732.59..1,732.59 rows=105,359 width=124) (actual time=109.931..109.932 rows=104,505 loops=1)

  • Buckets: 131072 Batches: 1 Memory Usage: 16575kB
38. 46.950 46.950 ↑ 1.0 104,505 1

Seq Scan on appuseraccount ac (cost=0.00..1,732.59 rows=105,359 width=124) (actual time=0.015..46.950 rows=104,505 loops=1)

39. 13.377 2,119.558 ↓ 9,993.6 49,968 1

Hash (cost=2,199,355.09..2,199,355.09 rows=5 width=139) (actual time=2,119.558..2,119.558 rows=49,968 loops=1)

  • Buckets: 65536 (originally 1024) Batches: 1 (originally 1) Memory Usage: 8627kB
40. 14.042 2,106.181 ↓ 9,993.6 49,968 1

Unique (cost=2,199,355.02..2,199,355.04 rows=5 width=139) (actual time=2,083.152..2,106.181 rows=49,968 loops=1)

41. 75.770 2,092.139 ↓ 10,814.0 54,070 1

Sort (cost=2,199,355.02..2,199,355.03 rows=5 width=139) (actual time=2,083.150..2,092.139 rows=54,070 loops=1)

  • Sort Key: ""*SELECT* 1"".bz DESC, ((opendoor_summary_mrel._0)::timestamp(0) without time zone) DESC NULLS LAST
  • Sort Method: quicksort Memory: 15880kB
42. 45.947 2,016.369 ↓ 10,814.0 54,070 1

Hash Join (cost=52,481.00..2,199,354.96 rows=5 width=139) (actual time=1,208.732..2,016.369 rows=54,070 loops=1)

  • Hash Cond: (((li.lockid)::text = opendoor_summary_mrel.lockid) AND (("*SELECT* 1".useraccount)::text = opendoor_summary_mrel.userid))
43. 50.874 1,803.876 ↑ 645.8 55,305 1

Hash Join (cost=41,718.88..1,643,896.46 rows=35,717,794 width=1,631) (actual time=1,041.437..1,803.876 rows=55,305 loops=1)

  • Hash Cond: (("*SELECT* 1".lockid)::text = (li.lockid)::text)
44.          

CTE all_key

45. 184.014 184.014 ↑ 1.1 62,689 1

Seq Scan on lockkeyinfo lk (cost=0.00..7,361.69 rows=67,921 width=226) (actual time=0.036..184.014 rows=62,689 loops=1)

  • Filter: ((keytype = ANY ('{0,2}'::integer[])) AND (userrole <> 255) AND (keystate = 0) AND ((authtime)::text <= (timezone('PRC'::text, now()))::text) AND ((expireddate)::text >= (timezone('PRC'::text, now()))::text))
  • Rows Removed by Filter: 58716
46. 7.333 1,572.257 ↑ 586.7 61,287 1

Append (cost=30,075.48..1,140,227.58 rows=35,959,345 width=188) (actual time=860.501..1,572.257 rows=61,287 loops=1)

47. 8.709 946.704 ↑ 614.3 58,243 1

Subquery Scan on *SELECT* 1 (cost=30,075.48..924,926.16 rows=35,780,443 width=188) (actual time=860.500..946.704 rows=58,243 loops=1)

48. 43.893 937.995 ↑ 614.3 58,243 1

Merge Join (cost=30,075.48..567,121.73 rows=35,780,443 width=442) (actual time=860.498..937.995 rows=58,243 loops=1)

  • Merge Cond: ((all_key.useraccount)::text = (_user_info_1.account)::text)
49. 59.941 298.465 ↑ 1.1 62,689 1

Sort (cost=6,809.61..6,979.42 rows=67,921 width=156) (actual time=285.970..298.465 rows=62,689 loops=1)

  • Sort Key: all_key.useraccount
  • Sort Method: quicksort Memory: 6434kB
50. 238.524 238.524 ↑ 1.1 62,689 1

CTE Scan on all_key (cost=0.00..1,358.42 rows=67,921 width=156) (actual time=0.040..238.524 rows=62,689 loops=1)

51. 95.167 595.637 ↓ 1.0 108,397 1

Sort (cost=23,265.87..23,529.27 rows=105,359 width=44) (actual time=574.515..595.637 rows=108,397 loops=1)

  • Sort Key: _user_info_1.account
  • Sort Method: quicksort Memory: 11436kB
52. 14.996 500.470 ↓ 1.0 107,061 1

Subquery Scan on _user_info_1 (cost=10,261.96..14,476.32 rows=105,359 width=44) (actual time=439.416..500.470 rows=107,061 loops=1)

53. 143.127 485.474 ↓ 1.0 107,061 1

HashAggregate (cost=10,261.96..13,422.73 rows=105,359 width=274) (actual time=439.414..485.474 rows=107,061 loops=1)

  • Group Key: CASE WHEN (substr(((COALESCE(bk_1.certid, ac_1.userid, ac_1.account)))::text, 18, 1) = 'x'::text) THEN ((substr(((COALESCE(bk_1.certid, ac_1.userid, ac_1.account)))::text, 1, 17) || 'X'::text))::character varying ELSE (COALESCE(bk_1.certid, ac_1.userid, ac_1.account)) END, ac_1.account, CASE WHEN (substr(((COALESCE(bk_1.certid, ac_1.userid)))::text, 18, 1) = 'x'::text) THEN ((substr(((COALESCE(bk_1.certid, ac_1.userid)))::text, 1, 17) || 'X'::text))::character varying ELSE (COALESCE(bk_1.certid, ac_1.userid)) END, max((COALESCE(ac_1.username, bk_1.username))::text), max((COALESCE(ac_1.headpicture, bk_1.certfrontpic))::text), bk_1.lockid, bk_1.bluekeyaccount, max((ac_1.authstate)::text)
54. 217.229 342.347 ↓ 1.0 107,061 1

HashAggregate (cost=4,994.01..8,154.78 rows=105,359 width=274) (actual time=211.583..342.347 rows=107,061 loops=1)

  • Group Key: COALESCE(bk_1.certid, ac_1.userid, ac_1.account), bk_1.bluekeyaccount, ac_1.account, COALESCE(bk_1.certid, ac_1.userid)
55. 41.012 125.118 ↓ 1.0 107,061 1

Hash Full Join (cost=3,049.58..3,150.23 rows=105,359 width=356) (actual time=83.812..125.118 rows=107,061 loops=1)

  • Hash Cond: ((bk_1.certid)::text = (ac_1.userid)::text)
56. 0.634 0.634 ↓ 1.0 3,588 1

Seq Scan on bluekeyuserinfo bk_1 (cost=0.00..49.25 rows=3,565 width=168) (actual time=0.007..0.634 rows=3,588 loops=1)

57. 41.043 83.472 ↑ 1.0 104,505 1

Hash (cost=1,732.59..1,732.59 rows=105,359 width=124) (actual time=83.472..83.472 rows=104,505 loops=1)

  • Buckets: 131072 Batches: 1 Memory Usage: 16575kB
58. 42.429 42.429 ↑ 1.0 104,505 1

Seq Scan on appuseraccount ac_1 (cost=0.00..1,732.59 rows=105,359 width=124) (actual time=0.016..42.429 rows=104,505 loops=1)

59. 0.466 618.220 ↑ 58.8 3,044 1

Subquery Scan on *SELECT* 2 (cost=30,075.48..35,504.70 rows=178,902 width=188) (actual time=595.111..618.220 rows=3,044 loops=1)

60. 11.670 617.754 ↑ 58.8 3,044 1

Merge Join (cost=30,075.48..33,715.68 rows=178,902 width=442) (actual time=595.110..617.754 rows=3,044 loops=1)

  • Merge Cond: (((all_key_1.lockid)::text = (_user_info_2.lockid)::text) AND ((all_key_1.useraccount)::text = (_user_info_2.bluekeyaccount)::text))
61. 71.817 84.345 ↑ 1.1 62,686 1

Sort (cost=6,809.61..6,979.42 rows=67,921 width=156) (actual time=74.131..84.345 rows=62,686 loops=1)

  • Sort Key: all_key_1.lockid, all_key_1.useraccount
  • Sort Method: quicksort Memory: 6434kB
62. 12.528 12.528 ↑ 1.1 62,689 1

CTE Scan on all_key all_key_1 (cost=0.00..1,358.42 rows=67,921 width=156) (actual time=0.003..12.528 rows=62,689 loops=1)

63. 25.690 521.739 ↑ 27.4 3,852 1

Sort (cost=23,265.87..23,529.27 rows=105,359 width=70) (actual time=520.943..521.739 rows=3,852 loops=1)

  • Sort Key: _user_info_2.lockid, _user_info_2.bluekeyaccount
  • Sort Method: quicksort Memory: 11508kB
64. 15.546 496.049 ↓ 1.0 107,061 1

Subquery Scan on _user_info_2 (cost=10,261.96..14,476.32 rows=105,359 width=70) (actual time=434.559..496.049 rows=107,061 loops=1)

65. 140.308 480.503 ↓ 1.0 107,061 1

HashAggregate (cost=10,261.96..13,422.73 rows=105,359 width=274) (actual time=434.558..480.503 rows=107,061 loops=1)

  • Group Key: CASE WHEN (substr(((COALESCE(bk_2.certid, ac_2.userid, ac_2.account)))::text, 18, 1) = 'x'::text) THEN ((substr(((COALESCE(bk_2.certid, ac_2.userid, ac_2.account)))::text, 1, 17) || 'X'::text))::character varying ELSE (COALESCE(bk_2.certid, ac_2.userid, ac_2.account)) END, ac_2.account, CASE WHEN (substr(((COALESCE(bk_2.certid, ac_2.userid)))::text, 18, 1) = 'x'::text) THEN ((substr(((COALESCE(bk_2.certid, ac_2.userid)))::text, 1, 17) || 'X'::text))::character varying ELSE (COALESCE(bk_2.certid, ac_2.userid)) END, max((COALESCE(ac_2.username, bk_2.username))::text), max((COALESCE(ac_2.headpicture, bk_2.certfrontpic))::text), bk_2.lockid, bk_2.bluekeyaccount, max((ac_2.authstate)::text)
66. 214.881 340.195 ↓ 1.0 107,061 1

HashAggregate (cost=4,994.01..8,154.78 rows=105,359 width=274) (actual time=211.461..340.195 rows=107,061 loops=1)

  • Group Key: COALESCE(bk_2.certid, ac_2.userid, ac_2.account), bk_2.bluekeyaccount, ac_2.account, COALESCE(bk_2.certid, ac_2.userid)
67. 40.778 125.314 ↓ 1.0 107,061 1

Hash Full Join (cost=3,049.58..3,150.23 rows=105,359 width=356) (actual time=84.228..125.314 rows=107,061 loops=1)

  • Hash Cond: ((bk_2.certid)::text = (ac_2.userid)::text)
68. 0.683 0.683 ↓ 1.0 3,588 1

Seq Scan on bluekeyuserinfo bk_2 (cost=0.00..49.25 rows=3,565 width=168) (actual time=0.009..0.683 rows=3,588 loops=1)

69. 41.588 83.853 ↑ 1.0 104,505 1

Hash (cost=1,732.59..1,732.59 rows=105,359 width=124) (actual time=83.853..83.853 rows=104,505 loops=1)

  • Buckets: 131072 Batches: 1 Memory Usage: 16575kB
70. 42.265 42.265 ↑ 1.0 104,505 1

Seq Scan on appuseraccount ac_2 (cost=0.00..1,732.59 rows=105,359 width=124) (actual time=0.018..42.265 rows=104,505 loops=1)

71. 18.566 180.745 ↑ 1.1 43,522 1

Hash (cost=3,690.23..3,690.23 rows=47,318 width=99) (actual time=180.745..180.745 rows=43,522 loops=1)

  • Buckets: 65536 Batches: 1 Memory Usage: 6195kB
72. 27.586 162.179 ↑ 1.1 43,522 1

Hash Left Join (cost=2,127.41..3,690.23 rows=47,318 width=99) (actual time=66.869..162.179 rows=43,522 loops=1)

  • Hash Cond: (ys."管理单位代码_id" = gl.id)
  • Filter: (CASE WHEN (length((hi.xzqhdm)::text) = 9) THEN gl."代码" WHEN (length((hi.xzqhdm)::text) = 12) THEN gl."上级单位代码" ELSE NULL::text END IS NOT NULL)
  • Rows Removed by Filter: 2031
73. 19.639 134.128 ↑ 1.0 45,553 1

Hash Left Join (cost=2,098.17..3,535.31 rows=47,555 width=127) (actual time=66.388..134.128 rows=45,553 loops=1)

  • Hash Cond: ((hi.xzqhdm)::text = xz."代码")
74. 38.523 112.802 ↑ 1.0 45,553 1

Hash Join (cost=2,025.16..2,811.70 rows=47,555 width=111) (actual time=64.682..112.802 rows=45,553 loops=1)

  • Hash Cond: ((li.houseid)::text = (hi.houseid)::text)
75. 9.958 9.958 ↑ 1.0 47,590 1

Seq Scan on lockinfo li (cost=0.00..661.48 rows=47,638 width=51) (actual time=0.011..9.958 rows=47,590 loops=1)

76. 29.025 64.321 ↓ 1.0 70,443 1

Hash (cost=1,150.68..1,150.68 rows=69,958 width=125) (actual time=64.321..64.321 rows=70,443 loops=1)

  • Buckets: 131072 Batches: 1 Memory Usage: 11986kB
77. 35.296 35.296 ↓ 1.0 70,443 1

Seq Scan on houseinfo hi (cost=0.00..1,150.68 rows=69,958 width=125) (actual time=0.007..35.296 rows=70,443 loops=1)

78. 0.372 1.687 ↓ 1.0 1,563 1

Hash (cost=53.53..53.53 rows=1,559 width=28) (actual time=1.687..1.687 rows=1,563 loops=1)

  • Buckets: 2048 Batches: 1 Memory Usage: 105kB
79. 0.510 1.315 ↓ 1.0 1,563 1

Hash Right Join (cost=37.28..53.53 rows=1,559 width=28) (actual time=0.666..1.315 rows=1,563 loops=1)

  • Hash Cond: (ys."行政区划_id" = xz.id)
80. 0.159 0.159 ↓ 1.1 1,280 1

Seq Scan on "行政区划与管理单位代码映射" ys (cost=0.00..13.11 rows=1,191 width=32) (actual time=0.005..0.159 rows=1,280 loops=1)

81. 0.351 0.646 ↑ 1.0 1,546 1

Hash (cost=17.79..17.79 rows=1,559 width=28) (actual time=0.645..0.646 rows=1,546 loops=1)

  • Buckets: 2048 Batches: 1 Memory Usage: 108kB
82. 0.295 0.295 ↑ 1.0 1,546 1

Seq Scan on "行政区划代码" xz (cost=0.00..17.79 rows=1,559 width=28) (actual time=0.012..0.295 rows=1,546 loops=1)

83. 0.255 0.465 ↑ 1.0 1,202 1

Hash (cost=14.22..14.22 rows=1,202 width=44) (actual time=0.465..0.465 rows=1,202 loops=1)

  • Buckets: 2048 Batches: 1 Memory Usage: 106kB
84. 0.210 0.210 ↑ 1.0 1,202 1

Seq Scan on "管理单位代码" gl (cost=0.00..14.22 rows=1,202 width=44) (actual time=0.005..0.210 rows=1,202 loops=1)

85. 75.461 166.546 ↑ 1.0 198,205 1

Hash (cost=7,718.55..7,718.55 rows=202,905 width=38) (actual time=166.546..166.546 rows=198,205 loops=1)

  • Buckets: 262144 Batches: 1 Memory Usage: 15954kB
86. 91.085 91.085 ↑ 1.0 201,321 1

Seq Scan on opendoor_summary_mrel (cost=0.00..7,718.55 rows=202,905 width=38) (actual time=0.017..91.085 rows=201,321 loops=1)