-- MERGE
MERGE INTO pgss_dml_tab USING pgss_dml_tab st ON (st.a = pgss_dml_tab.a AND st.a >= 4) WHEN MATCHED THENUPDATESET b = st.b || st.a::text;
MERGE INTO pgss_dml_tab USING pgss_dml_tab st ON (st.a = pgss_dml_tab.a AND st.a >= 4) WHEN MATCHED THENUPDATESET b = pgss_dml_tab.b || st.a::text;
MERGE INTO pgss_dml_tab USING pgss_dml_tab st ON (st.a = pgss_dml_tab.a AND st.a >= 4) WHEN MATCHED AND length(st.b) > 1THENUPDATESET b = pgss_dml_tab.b || st.a::text;
MERGE INTO pgss_dml_tab USING pgss_dml_tab st ON (st.a = pgss_dml_tab.a) WHENNOT MATCHED THENINSERT (a, b) VALUES (0, NULL);
MERGE INTO pgss_dml_tab USING pgss_dml_tab st ON (st.a = pgss_dml_tab.a) WHENNOT MATCHED THENINSERTVALUES (0, NULL); -- same as above
MERGE INTO pgss_dml_tab USING pgss_dml_tab st ON (st.a = pgss_dml_tab.a) WHENNOT MATCHED THENINSERT (b, a) VALUES (NULL, 0);
MERGE INTO pgss_dml_tab USING pgss_dml_tab st ON (st.a = pgss_dml_tab.a) WHENNOT MATCHED THENINSERT (a) VALUES (0);
MERGE INTO pgss_dml_tab USING pgss_dml_tab st ON (st.a = pgss_dml_tab.a AND st.a >= 4) WHEN MATCHED THENDELETE;
MERGE INTO pgss_dml_tab USING pgss_dml_tab st ON (st.a = pgss_dml_tab.a AND st.a >= 4) WHEN MATCHED THEN DO NOTHING;
MERGE INTO pgss_dml_tab USING pgss_dml_tab st ON (st.a = pgss_dml_tab.a AND st.a >= 4) WHENNOT MATCHED THEN DO NOTHING;
DROPTABLE pgss_dml_tab;
SELECT calls, rows, query FROM pg_stat_statements ORDERBY query COLLATE"C";
-- check that [temp] table relation extensions are tracked as writes CREATETABLE pgss_extend_tab (a int, b text); CREATE TEMP TABLE pgss_extend_temp_tab (a int, b text); SELECT pg_stat_statements_reset() ISNOTNULLAS t; INSERTINTO pgss_extend_tab (a, b) SELECT generate_series(1, 1000), 'something'; INSERTINTO pgss_extend_temp_tab (a, b) SELECT generate_series(1, 1000), 'something'; WITH sizes AS ( SELECT
pg_relation_size('pgss_extend_tab') / current_setting('block_size')::int8AS rel_size,
pg_relation_size('pgss_extend_temp_tab') / current_setting('block_size')::int8AS temp_rel_size
) SELECT
SUM(local_blks_written) >= (SELECT temp_rel_size FROM sizes) AS temp_written_ok,
SUM(local_blks_dirtied) >= (SELECT temp_rel_size FROM sizes) AS temp_dirtied_ok,
SUM(shared_blks_written) >= (SELECT rel_size FROM sizes) AS written_ok,
SUM(shared_blks_dirtied) >= (SELECT rel_size FROM sizes) AS dirtied_ok FROM pg_stat_statements;
SELECT pg_stat_statements_reset() ISNOTNULLAS t;
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.14 Sekunden
(vorverarbeitet am 2026-08-08)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.