αααααΆααααΈαα½αααααΆαααααΆαα’αα·αααααα ααΆααΆαααα·αααΆαααααΈαα PostgreSQL 14 DBMS ααααΌαααΆαααααα»αααααααΆαα ααΆαα’αΆααααααααααΆααααΆααΆααααΈααΉαααααΌαααΆαα ααααααΆααααα»αααααααααααΆαααααΆααα αΌαααααααα·α ααα·ααΆ 2026α
ααΆαα αααααααα·αααααΆαααα
- ααΆαααααααααΆαααΆαααααααααΆααααΆαα
αΌαααααΎαα·αααααα JSON αααααααΎααααααααΌα
α’αΆααα SELECT ('{ "postgres": { "release": 14 }}'::jsonb)['postgres']['release']; SELECT * FROM test WHERE details['attributes']['size'] = '"medium"';
ααΆαααααααααααααααααααααΆααααΌαααΆαα’αα»αααααααααΆαααα·αααααααα/αααααααααααααααααααααα hstore α ααΆαααααααααααααααααΌαααΆαα’αα»ααααααααΌααααααααΎαααααααααααα ααααα αααα’ααΆααα’αΆα ααααΌαααααΎαααααΆααααααααααααααααα α§ααΆα ααααααααΆαααααααα hstoreα αααα αΌααα αααα»α mytable VALUES ('a=>b, c=>d'); ααααΎαααΎα h['a'] ααΈ mytable; UPDATE mytable SET h['c'] = 'ααααΈ';
- αααα»ααααα½ααΆααααααααααααααΆααααααααα½αααααΌαααΆααααααΈαααΆαα½αααΉααααααα "αα α»αα½α" ααααΈ αααα’αα»ααααΆαα±ααα’ααααααααΆαααααααΈααααΆαααααα½ααααααααααα·ααααα½αααΎααααΆα ααααααααΈααΎαααααααα½ααααααΆαααααΆααααΈαα½αα αααααααα α»αα½αααααααΆααααΌαααΆαααααΎα‘αΎα α§ααΆα ααα αααααα βint4rangeβ ααααΌαααΉα βint4multirangeβ α αΎααααααα βdaterangeβ ααααΌαααΉα βdatemultirangeβα ααΆαααααΎααααΆααααααααααααΈαα½αααααα½ααααααΆααα ααΆαααα½αααααααα αααααΆαααααα»αααααΆααααα½αα ααααΎαααΎα '{[3,7), [8,9)}'::int4multirange; SELECT nummultirange(numrange(1.0, 14.0), numrange(20.0, 25.0));
- ααΆααααααΎαααααα·αααααΆαααααΌαααΆαααααΎα‘αΎαααΎααααΈαααααα’ααααΎαααΆααααααααααααααα»αααααααααααααΎαααΆαααΆααααααΆαααα½αα ααα½αααα αα αααα»αααΆαααααΎααααααα½αα ααα½α ααΆαααΎαα‘αΎαααααααααααΆαα’αα»ααααααααΌαααΆαα’αααααα
- ααααα·αααααΆαααααααααααα B-tree ααααΌαααΆαααααΎα±αααααααΎαα‘αΎα α αΎααααα αΆααΆαα½αααΉαααααΎαααααααααααα ααααααααΆααΆαααααΌαααΆαααααΎαα αα α»ααααααααΆαααΆααΉαααΆααααααΌαααΆααααααααΆαα
- ααΆαααααααααΆαααΆαααααααααΆαααααααααΆαα’αα·αα·αα (α’αα»αααααα ααααα·α libpq) ααααααααΆααααααΌαααΆααααααααααααΎ αααα’αα»ααααΆαα±ααα’ααααααααΎαααααΏααααΆαααααΆααααΌαααααΆααΈαααΌααΌαααααΆααα·αααααααααααΆααααααΉαααΆαα’αα»ααααααααα·ααααα·ααΆααααααααΌα ααα½αα ααα½ααα (αααα αΌα/ααααΎαα αα α»ααααααααΆα/αα»α) αααααααΎ ααααΎαααααΆααααααα·ααααα αΆαααααααααααααΎαα»αα αα»αααΆαααααααα½ααααααΎαααααΏαααΆαααΆαααΎααΆααααααΆααααΆαα½αααΉαααΆααααααΆαααααΉααααααΌααααα ααααααααΆαααΌααααααα
- αααααααΆααααααΎαα‘αΎααααααΆααααΆαααααααα ααΆααααααααα ααα αΆααααααΆαααααααααΉααααΆαααΈααα PostgreSQL α αααΎαα αα αααα»αααΆαα’αα»ααααααααΆαα ααααααΆαα‘αΌααΈαα α₯α‘αΌααααααΆααααΆαααΆα’αΆα ααααΎαα ααΆαααΎααααΈααααΎααααα·ααααα·ααΆαααααααα»αααααΎαααΆααα αααα»αααααααααααΈα αααα’αΆα ααααΎα±αααααααΎαα‘αΎααααΆαααααΆααααΌαααΆαα’αα»ααααααααΆαα ααααααααααα·ααααα·ααΆαααα ααΎαααΈααα ααΆααα·ααΌαα‘αΌααΈαααααα·αααααααααααα½αααΆααααα»αα’αα‘α»ααααα ααααα‘αΌααΈααααααΌαααΆαααααΎα±αααααααΎαα
- ααααααΆααααααΆααααααΆααααΆααΆαααΆααααα Foreign Data Wrapper (postgres_fdw) ααΆαααααααααΆαααΆαααααααααΆααααααΎαααΆααααα½ααααΆαααΆα‘αα ααααα αα α»ααααααα’αΆα α’αα»ααααααΆααααα αααααααΆαααα αααΆαααΈααα PostgreSQL ααααααααα postgres_fdw ααααααααααΆαααΆαααααααααΆααααΆααααααααα·αααααααα ααΆααΆαααΆααααα αα αααα»αααααααΆα α αα·ααααααααΆααααα»αααΆαααΆαα αΌαααΆααΆααααααΆααααα ααααααααααΆααααΆαααααΆα "IMPORT FOREIGN scheMA" α
- ααΆααααααΎαααααα·αααααΆαααααΌαααΆαααααΎα‘αΎαα ααααααΆαα’αα»ααααααααα·ααααα·ααΆα VACUUM (ααΆααααααΌαααααΆα αα·αααΆαααα ααα αααααααααααα»αααΆα)α αααααααα’αΆααααααΆαα’αΆααααααααΌαααΆααααααα αααααααααααα·ααααα·ααΆααααα’αΆαααααα·αααααΆαα ααααα·αααΎαααααααααα»ααα·αααααααααΆααααααα·ααααα·ααΆαααααΌαααΆααααααΎαα ααΆαααααααααΆαα αααΆαααΎααα αααααααΎαααΆααα·αα·αααααααα»ααααααα B-Tree α ααΆαα’αα»ααααααααα·ααααα·ααΆα "ααΆααα·ααΆα" ααααααααΌααααα·αα·α’αααΈααααα·ααααα·ααΆαααααΌαααααΆααα·ααααααααααΌαααΆααααααΏααααΆαααααΆααα
- ααΆααααααααααααααΆααααα»αααΆαααααααα ααΆαααααααααα·ααΈααΆααααααααα αΆαααααααααΎαααα»ααααααααα TOAST αααααα½ααα»αααααΌααααα»αααΆααααααΆαα»ααα·ααααααααα ααΌα ααΆαααα»αα’ααααα α¬ααααααΆαααααΈααΆαααα ααααααααΈααΎαα·ααΈααΆααααααααα αΆαα pglz α₯α‘αΌαααα TOAST α’αΆα ααααΎαααα½ααααααααΆα LZ4 α
- α§ααααααααααΆαααααα½ααα·αα·αααααααα·ααααα·ααΆααααα DBMS ααααΌαααΆααααααΈαα ααΆααααααααα·αααααΆαααΎααααΈααΆαααΆααααααααΆαααααΆααααααααΆ COPY (pg_stat_progress_copy) αααα·αα·α’αααΈααααα αααα (pg_stat_replication_slots) αα·ααααααααΆααααααΆααααααΉααααααα ααα»ααααα·ααααα·ααΆα WAL (pg_stat_wal) α αα»αααΆα compute_query_id ααααΌαααΆααααααα αααα’αα»ααααΆαα±αααααααααααααααααα ααΌα ααΆ pg_stat_activity αα·α EXPLAIN VERBOSE ααΎααααΈααΆαααΆαααααΎααααααααα’ααααααααΆααααα½αααααααααΆααααααΎααΈαα½ααα
- ααΆααααααΎαααααα·αααααΆαααααΌαααΆααααααααα αααααα·ααΈαααα ααααα½α ααΎααααΈαααααα’ααααΎαααΆαααααααααΆαααααα½α αα·αααααΎα±αααααααΎαα‘αΎαααΌαααΆαα’αα»αααααααα»ααααααααΆαααααΆααααααα·ααααα·ααΆαααααααααααααααΆαααααααααΆααααααΆ ααΆαααααα·ααααα·αααααα½ααααα»α PL/pgSQL αααααααΎααΆααααααααΆ "RETURN QUERY" αα·αααΆαααααα·ααααα·ααααααααΆαααααα½ααα αααα»α " αααα»αα‘αΎααα·αααΌααα·αααααΆααααααΆααβα ααΎααααΈαααααα’ααΆαα’αα»ααααααααΆααα½ααααα αΌαααααΆαααααΆααααΆαα (α αΌααα½α) ααΆαααΆαααααααααΆααααααΆαααααααΆααααααααααααΌαααΆαα’αα»ααααα
- α₯α‘αΌαααα αααα·αα·ααααα·ααααααα’αΆα ααααΌαααΆαααααΎααΎααααΈαααααΎαααααα·αααααΆααααααα α αΎαααΆαααααααααααααα₯α‘αΌααααα’αΆα ααααΌαααΆαααααΎ ααΎααααΈαααααΎαααααα·αααααΆααα»αααΆααααα’α½α α
- ααΈαα·αα·ααΈαααααΆααααααΆαα»ααααα’αα»ααααΆαα±ααα’ααααααααααααααααα·ααααα·ααΆααα αααα»ααααα»αααααΌαα₯α‘αΌααααααΆααααααΆαααααααα·αααααααααα‘αααααα·ααααααααΎαααΆαααΆαααααα "OUT" α
- ααΆαααααααα’αα»αααα date_bin αα αααααααααΆααααα»αααααααααΆαα αααααααααααααΆααααααΆααα SELECT date_bin('15 ααΆααΈ', TIMESTAMP '2020-02-11 15:44:17', TIMESTAMP '2001-01-01'); 2020-02-11 15:30:00
- ααΆααααααααααααα SEARCH αα·α CYCLE αααααΆαααααααααα»ααααααααΆα SQL ααΎααααΈααααΎα±ααααΆααΆααααααΆααααα½ααααα»αααΆααααααΆαα·α αα·ααααααα’ααααααααΆααααααα αααα»αααααααααΆααΆαααΌαα αααααΎαα‘αΎαααααα (CTE)α ααΆαα½αααΉα RECURSIVE search_tree (id, link, data) AS ( SELECT t.id, t.link, t.data FROM tree t UNION ALL SELECT t.id, t.link, t.data FROM tree t, search_tree st WHERE t. id = st.link ) αααααααααααα ααααΌαααα id SET ordercol SELECT * FROM search_tree ORDER BY ordercol;
- αα αααα»αα§αααααααααΎααααΆαα psql ααΆαααααααααααααααααααααα·ααααΆααααααααΆααΆαα½αααααΆααααααΌαααΆαααααΎα±αααααααΎαα‘αΎα αααααααΆααααα»αααΆααααα αΆαα’αΆαα»ααααααα»αααΆαααααΌαααΆααααααααα ααΆααααααααΆ "\df" α αΎααααα·αα·αααααΆααααα αΆαααααΌαααΆααααααΈααα ααΆααααααααΆ "\dX" α
- ααΆα’αΆα ααααααα·αααα·ααΆαααα’αΆα α¬αααααααΆαααα ααααα’αααααααΎααααΆααα αα·αααα·α’αΆα ααααΌαααΆαααααααα ααΎααΆααΆααα»αααα αα·αααααΆα αα·ααααααααΆααααααααααΎ pg_read_all_data αα·α pg_write_all_data αα½ααΆααΈαααααΆααααααααΆαα»αα GRANT pg_read_all_data ααα user1;
- ααΆαααα‘αΎαααααΈααααΆαααΎαα ααααααΆααααααααααΆααααΆααααααααΆαααααααααΎ SCRAM-SHA-256 αααα½αα±αα md5 (αααΆαααΆαααααα "password_encryption" αα ααααααααΎα postgresql.conf α₯α‘αΌααααααααΌαααΆαααααααα ααΆ 'scram-sha-256') α
ααααα: opennet.ru