QUERY PLAN
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Sort (cost=85966.28..85966.29 rows=1 width=227) (actual time=783.813..783.832 rows=267 loops=1)
Sort Key: plate.plate_number, copy.name
Sort Method: quicksort Memory: 95kB
CTE plate_cte
-> Hash Join (cost=909.53..1661.37 rows=267 width=29) (actual time=0.761..1.144 rows=267 loops=1)
Hash Cond: (copy_1.library_id = library_1.library_id)
-> Hash Join (cost=882.93..1629.09 rows=267 width=18) (actual time=0.662..0.801 rows=267 loops=1)
Hash Cond: (plate_1.copy_id = copy_1.copy_id)
-> Bitmap Heap Scan on plate plate_1 (cost=795.50..1537.99 rows=267 width=12) (actual time=0.202..0.288 rows=267 loops=1)
Recheck Cond: (plate_id = ANY ('{1293,1296,1297,1298,1310,1311,1314,1316,1317,1318,1319,1320,1323,1328,1329,1331,1340,1505,1506,1507,1513,1515,1517,1524,1532,1541,1562,1573,1575,1601,1620,1653,1654,1656,1657,1661,1662,1663,1664,1667,1668,1669,1671,1672,1674,1676,1677,1678,1679,1680,1682,1685,1689,1694,1696,1697,1776,1777,1780,1781,1784,1790,1791,1801,1817,1818,1819,1822,1825,1826,1827,1828,1830,1831,1832,1833,1834,1836,1837,1838,1839,1840,1841,1846,1878,1880,1889,1890,1893,1898,1900,1902,1903,1908,1909,1910,1911,1912,1926,1930,1932,1936,1937,1975,1977,1981,1985,1998,2002,2015,2035,2036,2041,2042,2048,2052,2064,2067,2068,2073,2261,2266,2338,2340,2687,2688,2693,2696,2699,2700,2701,2705,2707,2709,2711,2713,2807,2814,2815,3205,4057,4065,4069,8674,8694,13233,13256,13311,13315,13317,13318,14103,14298,14299,14301,14304,14305,17719,17724,17725,17730,17732,17733,17734,17736,17740,17741,17743,17744,17747,17749,19232,19236,19240,19241,19246,19250,19253,19254,19255,19256,19259,19263,19269,19270,19273,19280,19281,19284,19285,19288,19294,19299,19300,19301,19586,19587,19588,19589,19590,19591,20416,20418,20422,20428,20433,20434,20441,20456,20961,20962,20963,20964,20965,20966,20967,20972,20973,20974,20976,20977,20984,22206,22852,22854,22856,22858,22859,22860,22861,24157,24158,24159,24163,24519,24520,24521,24523,24524,28246,28247,28248,28249,28254,28330,28348,28350,28355,28357,28371,28373,28377,28381,28384,28391,28396,28398,28399,28402,28408,28419,28440,28443,28444,28445,28448,28454}'::integer[]))
Heap Blocks: exact=81
-> Bitmap Index Scan on plate_pkey (cost=0.00..795.43 rows=267 width=0) (actual time=0.196..0.196 rows=267 loops=1)
Index Cond: (plate_id = ANY ('{1293,1296,1297,1298,1310,1311,1314,1316,1317,1318,1319,1320,1323,1328,1329,1331,1340,1505,1506,1507,1513,1515,1517,1524,1532,1541,1562,1573,1575,1601,1620,1653,1654,1656,1657,1661,1662,1663,1664,1667,1668,1669,1671,1672,1674,1676,1677,1678,1679,1680,1682,1685,1689,1694,1696,1697,1776,1777,1780,1781,1784,1790,1791,1801,1817,1818,1819,1822,1825,1826,1827,1828,1830,1831,1832,1833,1834,1836,1837,1838,1839,1840,1841,1846,1878,1880,1889,1890,1893,1898,1900,1902,1903,1908,1909,1910,1911,1912,1926,1930,1932,1936,1937,1975,1977,1981,1985,1998,2002,2015,2035,2036,2041,2042,2048,2052,2064,2067,2068,2073,2261,2266,2338,2340,2687,2688,2693,2696,2699,2700,2701,2705,2707,2709,2711,2713,2807,2814,2815,3205,4057,4065,4069,8674,8694,13233,13256,13311,13315,13317,13318,14103,14298,14299,14301,14304,14305,17719,17724,17725,17730,17732,17733,17734,17736,17740,17741,17743,17744,17747,17749,19232,19236,19240,19241,19246,19250,19253,19254,19255,19256,19259,19263,19269,19270,19273,19280,19281,19284,19285,19288,19294,19299,19300,19301,19586,19587,19588,19589,19590,19591,20416,20418,20422,20428,20433,20434,20441,20456,20961,20962,20963,20964,20965,20966,20967,20972,20973,20974,20976,20977,20984,22206,22852,22854,22856,22858,22859,22860,22861,24157,24158,24159,24163,24519,24520,24521,24523,24524,28246,28247,28248,28249,28254,28330,28348,28350,28355,28357,28371,28373,28377,28381,28384,28391,28396,28398,28399,28402,28408,28419,28440,28443,28444,28445,28448,28454}'::integer[]))
-> Hash (cost=57.19..57.19 rows=2419 width=10) (actual time=0.456..0.456 rows=2419 loops=1)
Buckets: 4096 Batches: 1 Memory Usage: 138kB
-> Seq Scan on copy copy_1 (cost=0.00..57.19 rows=2419 width=10) (actual time=0.001..0.247 rows=2419 loops=1)
-> Hash (cost=22.38..22.38 rows=338 width=15) (actual time=0.090..0.090 rows=338 loops=1)
Buckets: 1024 Batches: 1 Memory Usage: 25kB
-> Seq Scan on library library_1 (cost=0.00..22.38 rows=338 width=15) (actual time=0.001..0.054 rows=338 loops=1)
CTE copy_well_volumes
-> HashAggregate (cost=8370.69..8373.01 rows=185 width=18) (actual time=5.003..5.077 rows=267 loops=1)
Group Key: copy_well.plate_id
-> Bitmap Heap Scan on copy_well (cost=1131.97..8096.78 rows=12174 width=18) (actual time=0.698..1.607 rows=9209 loops=1)
Recheck Cond: (plate_id = ANY ('{1293,1296,1297,1298,1310,1311,1314,1316,1317,1318,1319,1320,1323,1328,1329,1331,1340,1505,1506,1507,1513,1515,1517,1524,1532,1541,1562,1573,1575,1601,1620,1653,1654,1656,1657,1661,1662,1663,1664,1667,1668,1669,1671,1672,1674,1676,1677,1678,1679,1680,1682,1685,1689,1694,1696,1697,1776,1777,1780,1781,1784,1790,1791,1801,1817,1818,1819,1822,1825,1826,1827,1828,1830,1831,1832,1833,1834,1836,1837,1838,1839,1840,1841,1846,1878,1880,1889,1890,1893,1898,1900,1902,1903,1908,1909,1910,1911,1912,1926,1930,1932,1936,1937,1975,1977,1981,1985,1998,2002,2015,2035,2036,2041,2042,2048,2052,2064,2067,2068,2073,2261,2266,2338,2340,2687,2688,2693,2696,2699,2700,2701,2705,2707,2709,2711,2713,2807,2814,2815,3205,4057,4065,4069,8674,8694,13233,13256,13311,13315,13317,13318,14103,14298,14299,14301,14304,14305,17719,17724,17725,17730,17732,17733,17734,17736,17740,17741,17743,17744,17747,17749,19232,19236,19240,19241,19246,19250,19253,19254,19255,19256,19259,19263,19269,19270,19273,19280,19281,19284,19285,19288,19294,19299,19300,19301,19586,19587,19588,19589,19590,19591,20416,20418,20422,20428,20433,20434,20441,20456,20961,20962,20963,20964,20965,20966,20967,20972,20973,20974,20976,20977,20984,22206,22852,22854,22856,22858,22859,22860,22861,24157,24158,24159,24163,24519,24520,24521,24523,24524,28246,28247,28248,28249,28254,28330,28348,28350,28355,28357,28371,28373,28377,28381,28384,28391,28396,28398,28399,28402,28408,28419,28440,28443,28444,28445,28448,28454}'::integer[]))
Heap Blocks: exact=291
-> Bitmap Index Scan on copy_well_plate_id_cdacc97b (cost=0.00..1128.92 rows=12174 width=0) (actual time=0.674..0.674 rows=9209 loops=1)
Index Cond: (plate_id = ANY ('{1293,1296,1297,1298,1310,1311,1314,1316,1317,1318,1319,1320,1323,1328,1329,1331,1340,1505,1506,1507,1513,1515,1517,1524,1532,1541,1562,1573,1575,1601,1620,1653,1654,1656,1657,1661,1662,1663,1664,1667,1668,1669,1671,1672,1674,1676,1677,1678,1679,1680,1682,1685,1689,1694,1696,1697,1776,1777,1780,1781,1784,1790,1791,1801,1817,1818,1819,1822,1825,1826,1827,1828,1830,1831,1832,1833,1834,1836,1837,1838,1839,1840,1841,1846,1878,1880,1889,1890,1893,1898,1900,1902,1903,1908,1909,1910,1911,1912,1926,1930,1932,1936,1937,1975,1977,1981,1985,1998,2002,2015,2035,2036,2041,2042,2048,2052,2064,2067,2068,2073,2261,2266,2338,2340,2687,2688,2693,2696,2699,2700,2701,2705,2707,2709,2711,2713,2807,2814,2815,3205,4057,4065,4069,8674,8694,13233,13256,13311,13315,13317,13318,14103,14298,14299,14301,14304,14305,17719,17724,17725,17730,17732,17733,17734,17736,17740,17741,17743,17744,17747,17749,19232,19236,19240,19241,19246,19250,19253,19254,19255,19256,19259,19263,19269,19270,19273,19280,19281,19284,19285,19288,19294,19299,19300,19301,19586,19587,19588,19589,19590,19591,20416,20418,20422,20428,20433,20434,20441,20456,20961,20962,20963,20964,20965,20966,20967,20972,20973,20974,20976,20977,20984,22206,22852,22854,22856,22858,22859,22860,22861,24157,24158,24159,24163,24519,24520,24521,24523,24524,28246,28247,28248,28249,28254,28330,28348,28350,28355,28357,28371,28373,28377,28381,28384,28391,28396,28398,28399,28402,28408,28419,28440,28443,28444,28445,28448,28454}'::integer[]))
CTE well_concentrations
-> HashAggregate (cost=70962.24..71020.54 rows=5830 width=14) (actual time=729.925..731.188 rows=5959 loops=1)
Group Key: well.plate_number
-> Seq Scan on well (cost=0.00..44785.44 rows=2094144 width=14) (actual time=0.004..139.444 rows=2094144 loops=1)
CTE plate_statistics
-> Hash Join (cost=1078.41..2029.23 rows=280 width=367) (actual time=738.773..739.892 rows=267 loops=1)
Hash Cond: (plate_2.plate_number = well_concentrations.plate_number)
-> Hash Join (cost=888.94..1636.11 rows=267 width=239) (actual time=5.855..6.345 rows=267 loops=1)
Hash Cond: (plate_2.copy_id = copy_2.copy_id)
-> Hash Left Join (cost=801.51..1545.01 rows=267 width=237) (actual time=5.378..5.740 rows=267 loops=1)
Hash Cond: (plate_2.plate_id = copy_well_volumes.plate_id)
-> Bitmap Heap Scan on plate plate_2 (cost=795.50..1537.99 rows=267 width=37) (actual time=0.183..0.324 rows=267 loops=1)
Recheck Cond: (plate_id = ANY ('{1293,1296,1297,1298,1310,1311,1314,1316,1317,1318,1319,1320,1323,1328,1329,1331,1340,1505,1506,1507,1513,1515,1517,1524,1532,1541,1562,1573,1575,1601,1620,1653,1654,1656,1657,1661,1662,1663,1664,1667,1668,1669,1671,1672,1674,1676,1677,1678,1679,1680,1682,1685,1689,1694,1696,1697,1776,1777,1780,1781,1784,1790,1791,1801,1817,1818,1819,1822,1825,1826,1827,1828,1830,1831,1832,1833,1834,1836,1837,1838,1839,1840,1841,1846,1878,1880,1889,1890,1893,1898,1900,1902,1903,1908,1909,1910,1911,1912,1926,1930,1932,1936,1937,1975,1977,1981,1985,1998,2002,2015,2035,2036,2041,2042,2048,2052,2064,2067,2068,2073,2261,2266,2338,2340,2687,2688,2693,2696,2699,2700,2701,2705,2707,2709,2711,2713,2807,2814,2815,3205,4057,4065,4069,8674,8694,13233,13256,13311,13315,13317,13318,14103,14298,14299,14301,14304,14305,17719,17724,17725,17730,17732,17733,17734,17736,17740,17741,17743,17744,17747,17749,19232,19236,19240,19241,19246,19250,19253,19254,19255,19256,19259,19263,19269,19270,19273,19280,19281,19284,19285,19288,19294,19299,19300,19301,19586,19587,19588,19589,19590,19591,20416,20418,20422,20428,20433,20434,20441,20456,20961,20962,20963,20964,20965,20966,20967,20972,20973,20974,20976,20977,20984,22206,22852,22854,22856,22858,22859,22860,22861,24157,24158,24159,24163,24519,24520,24521,24523,24524,28246,28247,28248,28249,28254,28330,28348,28350,28355,28357,28371,28373,28377,28381,28384,28391,28396,28398,28399,28402,28408,28419,28440,28443,28444,28445,28448,28454}'::integer[]))
Heap Blocks: exact=81
-> Bitmap Index Scan on plate_pkey (cost=0.00..795.43 rows=267 width=0) (actual time=0.175..0.175 rows=267 loops=1)
Index Cond: (plate_id = ANY ('{1293,1296,1297,1298,1310,1311,1314,1316,1317,1318,1319,1320,1323,1328,1329,1331,1340,1505,1506,1507,1513,1515,1517,1524,1532,1541,1562,1573,1575,1601,1620,1653,1654,1656,1657,1661,1662,1663,1664,1667,1668,1669,1671,1672,1674,1676,1677,1678,1679,1680,1682,1685,1689,1694,1696,1697,1776,1777,1780,1781,1784,1790,1791,1801,1817,1818,1819,1822,1825,1826,1827,1828,1830,1831,1832,1833,1834,1836,1837,1838,1839,1840,1841,1846,1878,1880,1889,1890,1893,1898,1900,1902,1903,1908,1909,1910,1911,1912,1926,1930,1932,1936,1937,1975,1977,1981,1985,1998,2002,2015,2035,2036,2041,2042,2048,2052,2064,2067,2068,2073,2261,2266,2338,2340,2687,2688,2693,2696,2699,2700,2701,2705,2707,2709,2711,2713,2807,2814,2815,3205,4057,4065,4069,8674,8694,13233,13256,13311,13315,13317,13318,14103,14298,14299,14301,14304,14305,17719,17724,17725,17730,17732,17733,17734,17736,17740,17741,17743,17744,17747,17749,19232,19236,19240,19241,19246,19250,19253,19254,19255,19256,19259,19263,19269,19270,19273,19280,19281,19284,19285,19288,19294,19299,19300,19301,19586,19587,19588,19589,19590,19591,20416,20418,20422,20428,20433,20434,20441,20456,20961,20962,20963,20964,20965,20966,20967,20972,20973,20974,20976,20977,20984,22206,22852,22854,22856,22858,22859,22860,22861,24157,24158,24159,24163,24519,24520,24521,24523,24524,28246,28247,28248,28249,28254,28330,28348,28350,28355,28357,28371,28373,28377,28381,28384,28391,28396,28398,28399,28402,28408,28419,28440,28443,28444,28445,28448,28454}'::integer[]))
-> Hash (cost=3.70..3.70 rows=185 width=204) (actual time=5.187..5.187 rows=267 loops=1)
Buckets: 1024 Batches: 1 Memory Usage: 23kB
-> CTE Scan on copy_well_volumes (cost=0.00..3.70 rows=185 width=204) (actual time=5.004..5.148 rows=267 loops=1)
-> Hash (cost=57.19..57.19 rows=2419 width=6) (actual time=0.467..0.467 rows=2419 loops=1)
Buckets: 4096 Batches: 1 Memory Usage: 128kB
-> Seq Scan on copy copy_2 (cost=0.00..57.19 rows=2419 width=6) (actual time=0.003..0.234 rows=2419 loops=1)
-> Hash (cost=116.60..116.60 rows=5830 width=132) (actual time=732.903..732.903 rows=5959 loops=1)
Buckets: 8192 Batches: 1 Memory Usage: 317kB
-> CTE Scan on well_concentrations (cost=0.00..116.60 rows=5830 width=132) (actual time=729.928..732.351 rows=5959 loops=1)
-> Nested Loop (cost=804.88..2882.12 rows=1 width=227) (actual time=740.314..783.616 rows=267 loops=1)
-> Nested Loop Left Join (cost=804.73..1571.79 rows=1 width=210) (actual time=740.204..752.567 rows=267 loops=1)
-> Nested Loop (cost=804.46..1571.31 rows=1 width=199) (actual time=740.200..752.203 rows=267 loops=1)
-> Nested Loop (cost=804.18..1570.37 rows=1 width=174) (actual time=740.194..751.486 rows=267 loops=1)
Join Filter: (plate.plate_id = plate_statistics.plate_id)
Rows Removed by Join Filter: 71022
-> CTE Scan on plate_statistics (cost=0.00..5.60 rows=280 width=116) (actual time=738.775..740.034 rows=267 loops=1)
-> Materialize (cost=804.18..1556.38 rows=2 width=70) (actual time=0.005..0.015 rows=267 loops=267)
-> Hash Join (cost=804.18..1556.37 rows=2 width=70) (actual time=1.415..1.601 rows=267 loops=1)
Hash Cond: (plate.plate_id = plate_cte.plate_id)
-> Bitmap Heap Scan on plate (cost=795.50..1537.99 rows=267 width=66) (actual time=0.189..0.288 rows=267 loops=1)
Recheck Cond: (plate_id = ANY ('{1293,1296,1297,1298,1310,1311,1314,1316,1317,1318,1319,1320,1323,1328,1329,1331,1340,1505,1506,1507,1513,1515,1517,1524,1532,1541,1562,1573,1575,1601,1620,1653,1654,1656,1657,1661,1662,1663,1664,1667,1668,1669,1671,1672,1674,1676,1677,1678,1679,1680,1682,1685,1689,1694,1696,1697,1776,1777,1780,1781,1784,1790,1791,1801,1817,1818,1819,1822,1825,1826,1827,1828,1830,1831,1832,1833,1834,1836,1837,1838,1839,1840,1841,1846,1878,1880,1889,1890,1893,1898,1900,1902,1903,1908,1909,1910,1911,1912,1926,1930,1932,1936,1937,1975,1977,1981,1985,1998,2002,2015,2035,2036,2041,2042,2048,2052,2064,2067,2068,2073,2261,2266,2338,2340,2687,2688,2693,2696,2699,2700,2701,2705,2707,2709,2711,2713,2807,2814,2815,3205,4057,4065,4069,8674,8694,13233,13256,13311,13315,13317,13318,14103,14298,14299,14301,14304,14305,17719,17724,17725,17730,17732,17733,17734,17736,17740,17741,17743,17744,17747,17749,19232,19236,19240,19241,19246,19250,19253,19254,19255,19256,19259,19263,19269,19270,19273,19280,19281,19284,19285,19288,19294,19299,19300,19301,19586,19587,19588,19589,19590,19591,20416,20418,20422,20428,20433,20434,20441,20456,20961,20962,20963,20964,20965,20966,20967,20972,20973,20974,20976,20977,20984,22206,22852,22854,22856,22858,22859,22860,22861,24157,24158,24159,24163,24519,24520,24521,24523,24524,28246,28247,28248,28249,28254,28330,28348,28350,28355,28357,28371,28373,28377,28381,28384,28391,28396,28398,28399,28402,28408,28419,28440,28443,28444,28445,28448,28454}'::integer[]))
Heap Blocks: exact=81
-> Bitmap Index Scan on plate_pkey (cost=0.00..795.43 rows=267 width=0) (actual time=0.184..0.184 rows=267 loops=1)
Index Cond: (plate_id = ANY ('{1293,1296,1297,1298,1310,1311,1314,1316,1317,1318,1319,1320,1323,1328,1329,1331,1340,1505,1506,1507,1513,1515,1517,1524,1532,1541,1562,1573,1575,1601,1620,1653,1654,1656,1657,1661,1662,1663,1664,1667,1668,1669,1671,1672,1674,1676,1677,1678,1679,1680,1682,1685,1689,1694,1696,1697,1776,1777,1780,1781,1784,1790,1791,1801,1817,1818,1819,1822,1825,1826,1827,1828,1830,1831,1832,1833,1834,1836,1837,1838,1839,1840,1841,1846,1878,1880,1889,1890,1893,1898,1900,1902,1903,1908,1909,1910,1911,1912,1926,1930,1932,1936,1937,1975,1977,1981,1985,1998,2002,2015,2035,2036,2041,2042,2048,2052,2064,2067,2068,2073,2261,2266,2338,2340,2687,2688,2693,2696,2699,2700,2701,2705,2707,2709,2711,2713,2807,2814,2815,3205,4057,4065,4069,8674,8694,13233,13256,13311,13315,13317,13318,14103,14298,14299,14301,14304,14305,17719,17724,17725,17730,17732,17733,17734,17736,17740,17741,17743,17744,17747,17749,19232,19236,19240,19241,19246,19250,19253,19254,19255,19256,19259,19263,19269,19270,19273,19280,19281,19284,19285,19288,19294,19299,19300,19301,19586,19587,19588,19589,19590,19591,20416,20418,20422,20428,20433,20434,20441,20456,20961,20962,20963,20964,20965,20966,20967,20972,20973,20974,20976,20977,20984,22206,22852,22854,22856,22858,22859,22860,22861,24157,24158,24159,24163,24519,24520,24521,24523,24524,28246,28247,28248,28249,28254,28330,28348,28350,28355,28357,28371,28373,28377,28381,28384,28391,28396,28398,28399,28402,28408,28419,28440,28443,28444,28445,28448,28454}'::integer[]))
-> Hash (cost=5.34..5.34 rows=267 width=4) (actual time=1.223..1.223 rows=267 loops=1)
Buckets: 1024 Batches: 1 Memory Usage: 18kB
-> CTE Scan on plate_cte (cost=0.00..5.34 rows=267 width=4) (actual time=0.762..1.202 rows=267 loops=1)
-> Index Scan using copy_pkey on copy (cost=0.28..0.93 rows=1 width=33) (actual time=0.002..0.002 rows=1 loops=267)
Index Cond: (copy_id = plate.copy_id)
-> Index Scan using plate_location_pkey on plate_location (cost=0.28..0.47 rows=1 width=19) (actual time=0.001..0.001 rows=0 loops=267)
Index Cond: (plate.plate_location_id = plate_location_id)
-> Index Scan using library_pkey on library (cost=0.15..0.20 rows=1 width=25) (actual time=0.001..0.001 rows=1 loops=267)
Index Cond: (library_id = copy.library_id)
SubPlan 5
-> Aggregate (cost=1310.11..1310.12 rows=1 width=0) (actual time=0.114..0.114 rows=1 loops=267)
-> Bitmap Heap Scan on well well_1 (cost=7.18..1309.52 rows=239 width=0) (actual time=0.031..0.096 rows=350 loops=267)
Recheck Cond: (plate_number = plate.plate_number)
Filter: (library_well_type = 'experimental'::text)
Rows Removed by Filter: 34
Heap Blocks: exact=6832
-> Bitmap Index Scan on well_plate_number_key (cost=0.00..7.12 rows=359 width=0) (actual time=0.020..0.020 rows=384 loops=267)
Index Cond: (plate_number = plate.plate_number)
Planning time: 17.905 ms
Execution time: 784.188 ms
(87 rows)