<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>PGEXT.CLOUD – CONTRIB</title>
    <link>https://ext.pgsty.com/repos/contrib/</link>
    <description>Recent content in CONTRIB on PGEXT.CLOUD</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-US</language>
    
	  <atom:link href="https://ext.pgsty.com/repos/contrib/index.xml" rel="self" type="application/rss+xml" />
    
    
      
        
      
    
    
    <item>
      <title>earthdistance</title>
      <link>https://ext.pgsty.com/e/earthdistance/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/earthdistance/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/earthdistance.html&#34;&gt;&lt;strong&gt;earthdistance&lt;/strong&gt;&lt;/a&gt; : calculate great-circle distances on the surface of the Earth&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;1690&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/earthdistance.html&#34;&gt;earthdistance&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/earthdistance&#34; title=&#34;Extension: earthdistance&#34;&gt;earthdistance&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.2&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-gis pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/gis/&#34; title=&#34;GIS — Geospatial&#34;&gt;&lt;i class=&#34;fa-solid fa-globe&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;GIS&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Requires&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/cube&#34; title=&#34;Extension: cube&#34;&gt;cube&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/postgis&#34; title=&#34;Extension: postgis&#34;&gt;postgis&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/q3c&#34; title=&#34;Extension: q3c&#34;&gt;q3c&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_sphere&#34; title=&#34;Extension: pg_sphere&#34;&gt;pg_sphere&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pointcloud&#34; title=&#34;Extension: pointcloud&#34;&gt;pointcloud&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/h3&#34; title=&#34;Extension: h3&#34;&gt;h3&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_geohash&#34; title=&#34;Extension: pg_geohash&#34;&gt;pg_geohash&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_eviltransform&#34; title=&#34;Extension: pg_eviltransform&#34;&gt;pg_eviltransform&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/qdgc&#34; title=&#34;Extension: qdgc&#34;&gt;qdgc&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgrouting&#34; title=&#34;Extension: pgrouting&#34;&gt;pgrouting&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_polyline&#34; title=&#34;Extension: pg_polyline&#34;&gt;pg_polyline&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-d5265284-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-d5265284-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-d5265284-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;earthdistance&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;CASCADE&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- requires cube&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/earthdistance.html&#34;&gt;earthdistance: Great circle distances on the surface of the Earth&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;earthdistance&lt;/code&gt; module provides two different approaches to calculating great circle distances on the surface of the Earth. The Earth is assumed to be perfectly spherical (for more accuracy, use PostGIS).&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-d5265284-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-d5265284-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-d5265284-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;earthdistance&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;CASCADE&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- requires cube&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;cube-based-earth-distances&#34;&gt;Cube-Based Earth Distances&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#cube-based-earth-distances&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Data is stored in cubes using 3 coordinates representing x, y, z distance from Earth&amp;rsquo;s center. A &lt;code&gt;earth&lt;/code&gt; domain over type &lt;code&gt;cube&lt;/code&gt; is provided.&lt;/p&gt;
&lt;h3 id=&#34;functions&#34;&gt;Functions&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#functions&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Function&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;earth()&lt;/code&gt; → &lt;code&gt;float8&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Returns the assumed radius of the Earth&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;sec_to_gc(float8)&lt;/code&gt; → &lt;code&gt;float8&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Converts straight line (secant) distance to great circle distance&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;gc_to_sec(float8)&lt;/code&gt; → &lt;code&gt;float8&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Converts great circle distance to straight line (secant) distance&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;ll_to_earth(float8, float8)&lt;/code&gt; → &lt;code&gt;earth&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Returns location given latitude and longitude in degrees&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;latitude(earth)&lt;/code&gt; → &lt;code&gt;float8&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Returns latitude in degrees&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;longitude(earth)&lt;/code&gt; → &lt;code&gt;float8&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Returns longitude in degrees&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;earth_distance(earth, earth)&lt;/code&gt; → &lt;code&gt;float8&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Returns great circle distance between two points&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;earth_box(earth, float8)&lt;/code&gt; → &lt;code&gt;cube&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Returns a box for indexed search using cube &lt;code&gt;@&amp;gt;&lt;/code&gt; operator&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;example&#34;&gt;Example&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#example&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-d5265284-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;10&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-d5265284-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-d5265284-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Distance between New York and London in meters
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;earth_distance&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ll_to_earth&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;40&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;7128&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;74&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0060&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ll_to_earth&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;51&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;5074&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1278&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Find all points within 1000 meters of a location (indexable)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;places&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;earth_box&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ll_to_earth&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;40&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;7128&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;74&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0060&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1000&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ll_to_earth&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lat&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lon&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;point-based-earth-distances&#34;&gt;Point-Based Earth Distances&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#point-based-earth-distances&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Represents Earth locations as &lt;code&gt;point&lt;/code&gt; type values where the first component is longitude and the second is latitude (in degrees).&lt;/p&gt;
&lt;h3 id=&#34;operators&#34;&gt;Operators&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#operators&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Operator&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;point &amp;lt;@&amp;gt; point&lt;/code&gt; → &lt;code&gt;float8&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Distance in statute miles between two points&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;example-1&#34;&gt;Example&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#example-1&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-d5265284-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;2&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-d5265284-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-d5265284-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Distance in statute miles
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;point&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;74&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0060&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;40&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;7128&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;lt;@&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;point&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1278&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;51&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;5074&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;Note: Units are hardwired to statute miles. The point-based approach has edge condition issues near poles and ±180° longitude; the cube-based representation avoids these discontinuities.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>fuzzystrmatch</title>
      <link>https://ext.pgsty.com/e/fuzzystrmatch/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/fuzzystrmatch/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/fuzzystrmatch.html&#34;&gt;&lt;strong&gt;fuzzystrmatch&lt;/strong&gt;&lt;/a&gt; : determine similarities and distance between strings&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;2380&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/fuzzystrmatch.html&#34;&gt;fuzzystrmatch&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/fuzzystrmatch&#34; title=&#34;Extension: fuzzystrmatch&#34;&gt;fuzzystrmatch&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.2&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-fts pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/fts/&#34; title=&#34;FTS — Full-Text Search&#34;&gt;&lt;i class=&#34;fa-solid fa-magnifying-glass&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;FTS&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Need By&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/postgis_tiger_geocoder&#34; title=&#34;Extension: postgis_tiger_geocoder&#34;&gt;postgis_tiger_geocoder&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_trgm&#34; title=&#34;Extension: pg_trgm&#34;&gt;pg_trgm&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_similarity&#34; title=&#34;Extension: pg_similarity&#34;&gt;pg_similarity&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/smlar&#34; title=&#34;Extension: smlar&#34;&gt;smlar&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgpcre&#34; title=&#34;Extension: pgpcre&#34;&gt;pgpcre&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/re2&#34; title=&#34;Extension: re2&#34;&gt;re2&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_bigm&#34; title=&#34;Extension: pg_bigm&#34;&gt;pg_bigm&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/biscuit&#34; title=&#34;Extension: biscuit&#34;&gt;biscuit&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/unaccent&#34; title=&#34;Extension: unaccent&#34;&gt;unaccent&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/citext&#34; title=&#34;Extension: citext&#34;&gt;citext&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-ddaf40e1-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-ddaf40e1-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-ddaf40e1-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fuzzystrmatch&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/fuzzystrmatch.html&#34;&gt;fuzzystrmatch: Determine similarities and distance between strings&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;fuzzystrmatch&lt;/code&gt; module provides functions to determine similarities and distance between strings.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-ddaf40e1-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-ddaf40e1-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-ddaf40e1-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fuzzystrmatch&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;soundex&#34;&gt;Soundex&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#soundex&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Converts a string to its Soundex code (useful for matching similar-sounding names):&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-ddaf40e1-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;8&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-ddaf40e1-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-ddaf40e1-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;soundex&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Anne&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;soundex&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Ann&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;difference&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Anne&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Ann&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- A500, A500, 4
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;soundex&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Anne&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;soundex&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Andrew&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;difference&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Anne&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Andrew&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- A500, A536, 2
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;soundex&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Anne&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;soundex&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Margaret&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;difference&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Anne&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Margaret&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- A500, M626, 0&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;The &lt;code&gt;difference&lt;/code&gt; function returns 0–4, where 4 means most similar.&lt;/p&gt;
&lt;h3 id=&#34;daitch-mokotoff-soundex&#34;&gt;Daitch-Mokotoff Soundex&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#daitch-mokotoff-soundex&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Returns a set of Daitch-Mokotoff soundex codes (better for non-English names):&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-ddaf40e1-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;8&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-ddaf40e1-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-ddaf40e1-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;daitch_mokotoff&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;George&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- {595000}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;daitch_mokotoff&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;John&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- {160000,460000}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Find names sounding like &amp;#39;Schwartzenegger&amp;#39;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;s&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;daitch_mokotoff&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;nm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;daitch_mokotoff&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Schwartzenegger&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;Supports indexing with GIN:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-ddaf40e1-fence-4&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-ddaf40e1-fence-4&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-ddaf40e1-fence-4-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;s&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gin&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;daitch_mokotoff&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;nm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gin__int_ops&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;levenshtein-distance&#34;&gt;Levenshtein Distance&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#levenshtein-distance&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Computes edit distance between two strings (insertions, deletions, substitutions):&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-ddaf40e1-fence-5&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;12&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-ddaf40e1-fence-5&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-ddaf40e1-fence-5-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;levenshtein&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;GUMBO&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;GAMBOL&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- 2
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;levenshtein&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;GUMBO&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;GAMBOL&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- 3 (custom costs: insert=2, delete=1, substitute=1)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Bounded version (faster, stops early)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;levenshtein_less_equal&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;extensive&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;exhaustive&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- 3 (actual distance exceeds threshold, returns actual)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;levenshtein_less_equal&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;extensive&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;exhaustive&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;4&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- 4&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;metaphone&#34;&gt;Metaphone&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#metaphone&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Returns a metaphone code for a string:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-ddaf40e1-fence-6&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;2&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-ddaf40e1-fence-6&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-ddaf40e1-fence-6-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;metaphone&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;GUMBO&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;4&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- KM&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;double-metaphone&#34;&gt;Double Metaphone&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#double-metaphone&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Returns primary and alternate codes (handles more name variations):&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-ddaf40e1-fence-7&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;5&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-ddaf40e1-fence-7&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-ddaf40e1-fence-7-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dmetaphone&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;gumbo&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- KMP
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dmetaphone_alt&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;gumbo&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- KMP&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>pg_trgm</title>
      <link>https://ext.pgsty.com/e/pg_trgm/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/pg_trgm/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/pgtrgm.html&#34;&gt;&lt;strong&gt;pg_trgm&lt;/strong&gt;&lt;/a&gt; : text similarity measurement and index searching based on trigrams&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;2390&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/pgtrgm.html&#34;&gt;pg_trgm&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_trgm&#34; title=&#34;Extension: pg_trgm&#34;&gt;pg_trgm&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.6&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-fts pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/fts/&#34; title=&#34;FTS — Full-Text Search&#34;&gt;&lt;i class=&#34;fa-solid fa-magnifying-glass&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;FTS&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_similarity&#34; title=&#34;Extension: pg_similarity&#34;&gt;pg_similarity&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/fuzzystrmatch&#34; title=&#34;Extension: fuzzystrmatch&#34;&gt;fuzzystrmatch&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/smlar&#34; title=&#34;Extension: smlar&#34;&gt;smlar&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_bigm&#34; title=&#34;Extension: pg_bigm&#34;&gt;pg_bigm&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgpcre&#34; title=&#34;Extension: pgpcre&#34;&gt;pgpcre&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/re2&#34; title=&#34;Extension: re2&#34;&gt;re2&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/biscuit&#34; title=&#34;Extension: biscuit&#34;&gt;biscuit&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/citext&#34; title=&#34;Extension: citext&#34;&gt;citext&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/unaccent&#34; title=&#34;Extension: unaccent&#34;&gt;unaccent&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgroonga&#34; title=&#34;Extension: pgroonga&#34;&gt;pgroonga&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.6&#34;&gt;1.6&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.6&#34;&gt;1.6&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.6&#34;&gt;1.6&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.6&#34;&gt;1.6&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.6&#34;&gt;1.6&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-e37690c4-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-e37690c4-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-e37690c4-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_trgm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/pgtrgm.html&#34;&gt;pg_trgm: Text similarity measurement and index searching based on trigrams&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;pg_trgm&lt;/code&gt; module provides functions and operators for determining the similarity of alphanumeric text based on trigram matching, plus index operator classes for fast string similarity searches.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-e37690c4-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-e37690c4-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-e37690c4-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_trgm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;A trigram is a group of three consecutive characters from a string. Two strings are similar if they share many trigrams.&lt;/p&gt;
&lt;h3 id=&#34;functions&#34;&gt;Functions&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#functions&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Function&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;similarity(text, text)&lt;/code&gt; → &lt;code&gt;real&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Returns similarity between 0 and 1&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;show_trgm(text)&lt;/code&gt; → &lt;code&gt;text[]&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Returns array of all trigrams in the string&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;word_similarity(text, text)&lt;/code&gt; → &lt;code&gt;real&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Similarity of first string to most similar word in second&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;strict_word_similarity(text, text)&lt;/code&gt; → &lt;code&gt;real&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Similar but with stricter word boundary matching&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;show_limit()&lt;/code&gt; → &lt;code&gt;real&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;&lt;em&gt;(Deprecated)&lt;/em&gt; Returns &lt;code&gt;pg_trgm.similarity_threshold&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;set_limit(real)&lt;/code&gt; → &lt;code&gt;real&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;&lt;em&gt;(Deprecated)&lt;/em&gt; Sets &lt;code&gt;pg_trgm.similarity_threshold&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-e37690c4-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;5&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-e37690c4-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-e37690c4-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;similarity&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;word&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;two words&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- 0.36363637
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;show_trgm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;word&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- {&amp;#34;  w&amp;#34;,&amp;#34; wo&amp;#34;,ord,&amp;#34;rd &amp;#34;,wor}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;operators&#34;&gt;Operators&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#operators&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Operator&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;text % text&lt;/code&gt; → &lt;code&gt;boolean&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;True if similarity &amp;gt; &lt;code&gt;pg_trgm.similarity_threshold&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;text &amp;lt;% text&lt;/code&gt; → &lt;code&gt;boolean&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;True if word similarity &amp;gt; &lt;code&gt;pg_trgm.word_similarity_threshold&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;text %&amp;gt; text&lt;/code&gt; → &lt;code&gt;boolean&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Commutator of &lt;code&gt;&amp;lt;%&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;text &amp;lt;&amp;lt;% text&lt;/code&gt; → &lt;code&gt;boolean&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;True if strict word similarity &amp;gt; threshold&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;text %&amp;gt;&amp;gt; text&lt;/code&gt; → &lt;code&gt;boolean&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Commutator of &lt;code&gt;&amp;lt;&amp;lt;%&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;text &amp;lt;-&amp;gt; text&lt;/code&gt; → &lt;code&gt;real&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Distance (1 - similarity)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;text &amp;lt;&amp;lt;-&amp;gt; text&lt;/code&gt; → &lt;code&gt;real&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Word distance (1 - word_similarity)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;text &amp;lt;-&amp;gt;&amp;gt; text&lt;/code&gt; → &lt;code&gt;real&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Commutator of &lt;code&gt;&amp;lt;&amp;lt;-&amp;gt;&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;text &amp;lt;&amp;lt;&amp;lt;-&amp;gt; text&lt;/code&gt; → &lt;code&gt;real&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Strict word distance&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;text &amp;lt;-&amp;gt;&amp;gt;&amp;gt; text&lt;/code&gt; → &lt;code&gt;real&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Commutator of &lt;code&gt;&amp;lt;&amp;lt;&amp;lt;-&amp;gt;&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;guc-parameters&#34;&gt;GUC Parameters&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#guc-parameters&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Parameter&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Default&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;pg_trgm.similarity_threshold&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;0.3&lt;/td&gt;
      &lt;td&gt;Threshold for &lt;code&gt;%&lt;/code&gt; operator&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;pg_trgm.word_similarity_threshold&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;0.6&lt;/td&gt;
      &lt;td&gt;Threshold for &lt;code&gt;&amp;lt;%&lt;/code&gt; and &lt;code&gt;%&amp;gt;&lt;/code&gt; operators&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;pg_trgm.strict_word_similarity_threshold&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;0.5&lt;/td&gt;
      &lt;td&gt;Threshold for &lt;code&gt;&amp;lt;&amp;lt;%&lt;/code&gt; and &lt;code&gt;%&amp;gt;&amp;gt;&lt;/code&gt; operators&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;index-support&#34;&gt;Index Support&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#index-support&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;GiST and GIN indexes support the similarity operators:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-e37690c4-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;8&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-e37690c4-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-e37690c4-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- GIN index (faster lookups, slower builds)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;trgm_idx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;test_trgm&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;GIN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gin_trgm_ops&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- GiST index (supports distance operators for KNN)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;trgm_idx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;test_trgm&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;GIST&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gist_trgm_ops&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- GiST with custom signature length
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;trgm_idx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;test_trgm&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;GIST&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gist_trgm_ops&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;siglen&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;32&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;text-search-example&#34;&gt;Text Search Example&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#text-search-example&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Using trigram indexes to speed up &lt;code&gt;LIKE&lt;/code&gt; / &lt;code&gt;ILIKE&lt;/code&gt; / regex queries:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-e37690c4-fence-4&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;10&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-e37690c4-fence-4&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-e37690c4-fence-4-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;similarity&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;word&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sml&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;test_trgm&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;%&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;word&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;ORDER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;BY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sml&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DESC&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- KNN search using distance operator
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;lt;-&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;word&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dist&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;test_trgm&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;ORDER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;BY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dist&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LIMIT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;10&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;GIN and GiST trigram indexes also accelerate &lt;code&gt;LIKE&lt;/code&gt;, &lt;code&gt;ILIKE&lt;/code&gt;, &lt;code&gt;~&lt;/code&gt;, and &lt;code&gt;~*&lt;/code&gt; queries automatically.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>tablefunc</title>
      <link>https://ext.pgsty.com/e/tablefunc/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/tablefunc/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/tablefunc.html&#34;&gt;&lt;strong&gt;tablefunc&lt;/strong&gt;&lt;/a&gt; : functions that manipulate whole tables, including crosstab&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;2590&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/tablefunc.html&#34;&gt;tablefunc&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/tablefunc&#34; title=&#34;Extension: tablefunc&#34;&gt;tablefunc&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-olap pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/olap/&#34; title=&#34;OLAP — Analytics&#34;&gt;&lt;i class=&#34;fa-solid fa-chart-column&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;OLAP&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Need By&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg4ml&#34; title=&#34;Extension: pg4ml&#34;&gt;pg4ml&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_duckdb&#34; title=&#34;Extension: pg_duckdb&#34;&gt;pg_duckdb&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/first_last_agg&#34; title=&#34;Extension: first_last_agg&#34;&gt;first_last_agg&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/extra_window_functions&#34; title=&#34;Extension: extra_window_functions&#34;&gt;extra_window_functions&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/argm&#34; title=&#34;Extension: argm&#34;&gt;argm&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_lake&#34; title=&#34;Extension: pg_lake&#34;&gt;pg_lake&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plprql&#34; title=&#34;Extension: plprql&#34;&gt;plprql&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/duckdb_fdw&#34; title=&#34;Extension: duckdb_fdw&#34;&gt;duckdb_fdw&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-33a1ade3-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-33a1ade3-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-33a1ade3-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tablefunc&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/tablefunc.html&#34;&gt;tablefunc: Functions that manipulate whole tables, including crosstab&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;tablefunc&lt;/code&gt; module provides functions that return tables (multiple rows).
It is a trusted extension available to non-superusers with &lt;code&gt;CREATE&lt;/code&gt; privilege.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-33a1ade3-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-33a1ade3-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-33a1ade3-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tablefunc&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;normal_rand--generate-random-values&#34;&gt;normal_rand &amp;ndash; Generate Random Values&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#normal_rand--generate-random-values&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Produces a set of normally distributed random values (Gaussian distribution):&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-33a1ade3-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;2&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-33a1ade3-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-33a1ade3-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;normal_rand&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1000&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;3&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- numvals: number of values, mean: 5, stddev: 3&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;crosstabtext--single-parameter-pivot&#34;&gt;crosstab(text) &amp;ndash; Single-Parameter Pivot&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#crosstabtext--single-parameter-pivot&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Pivots data from long format to wide format. The SQL must return &lt;code&gt;row_name&lt;/code&gt;, &lt;code&gt;category&lt;/code&gt;, and &lt;code&gt;value&lt;/code&gt; columns:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-33a1ade3-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;15&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-33a1ade3-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-33a1ade3-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TABLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ct&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;SERIAL&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;rowid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;TEXT&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;attribute&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;TEXT&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;TEXT&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INTO&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ct&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;rowid&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;attribute&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;VALUES&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;test1&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;att1&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;val1&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;test1&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;att2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;val2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;test1&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;att3&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;val3&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;test2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;att1&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;val5&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;test2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;att2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;val6&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;test2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;att3&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;val7&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;crosstab&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;SELECT rowid, attribute, value FROM ct ORDER BY 1,2&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ct&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row_name&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;category_1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;category_2&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;category_3&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row_name&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;category_1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;category_2&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;category_3&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;----------+------------+------------+------------
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;test1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;       &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val2&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;       &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val3&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;test2&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val5&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;       &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val6&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;       &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val7&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;The input query should always use &lt;code&gt;ORDER BY 1,2&lt;/code&gt; to ensure proper grouping.
Extra output columns beyond the available values are filled with nulls.&lt;/p&gt;
&lt;h3 id=&#34;crosstabtext-text--two-parameter-pivot-with-categories&#34;&gt;crosstab(text, text) &amp;ndash; Two-Parameter Pivot with Categories&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#crosstabtext-text--two-parameter-pivot-with-categories&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Handles cases where some groups may not have data for all categories:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-33a1ade3-fence-4&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;17&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-33a1ade3-fence-4&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-33a1ade3-fence-4-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TABLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sales&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;year&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;month&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;qty&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INTO&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sales&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;VALUES&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2007&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1000&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2007&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1500&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2007&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;7&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;500&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2007&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;11&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1500&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2007&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;12&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2000&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2008&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1000&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;crosstab&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;SELECT year, month, qty FROM sales ORDER BY 1&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;SELECT m FROM generate_series(1,12) m&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;year&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Jan&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Feb&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Mar&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Apr&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;May&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Jun&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Jul&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Aug&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Sep&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Oct&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Nov&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Dec&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;year&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Jan&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Feb&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Mar&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Apr&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;May&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Jun&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Jul&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Aug&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Sep&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Oct&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Nov&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;Dec&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;------+------+------+-----+-----+-----+-----+-----+-----+-----+-----+------+------
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2007&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1000&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1500&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;500&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1500&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2000&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2008&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1000&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;The source SQL may include &amp;ldquo;extra&amp;rdquo; columns between &lt;code&gt;row_name&lt;/code&gt; and &lt;code&gt;category&lt;/code&gt;/&lt;code&gt;value&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;crosstab2-crosstab3-crosstab4--predefined-wrappers&#34;&gt;crosstab2, crosstab3, crosstab4 &amp;ndash; Predefined Wrappers&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#crosstab2-crosstab3-crosstab4--predefined-wrappers&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Pre-built wrappers that avoid writing the FROM clause (text input/output only):&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-33a1ade3-fence-5&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;3&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-33a1ade3-fence-5&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-33a1ade3-fence-5-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;crosstab3&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;SELECT rowid, attribute, value FROM ct ORDER BY 1,2&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;Create custom wrappers for other types:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-33a1ade3-fence-6&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;7&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-33a1ade3-fence-6&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-33a1ade3-fence-6-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my_crosstab_float8_5_cols&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my_row_name&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;c1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;float8&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;c2&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;float8&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;c3&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;float8&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;c4&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;float8&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;c5&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;float8&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;OR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;REPLACE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;crosstab_float8_5_cols&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;setof&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my_crosstab_float8_5_cols&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;$libdir/tablefunc&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;crosstab&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;C&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;STABLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;STRICT&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;connectby--hierarchical-tree-display&#34;&gt;connectby &amp;ndash; Hierarchical Tree Display&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#connectby--hierarchical-tree-display&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Displays hierarchical data stored in a table with key and parent-key fields:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-33a1ade3-fence-7&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;18&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-33a1ade3-fence-7&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-33a1ade3-fence-7-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TABLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;connectby_tree&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;keyid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;parent_keyid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pos&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INTO&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;connectby_tree&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;VALUES&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;row1&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;NULL&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;row2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;row1&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;row3&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;row1&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;row4&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;row2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;row5&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;row2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;row6&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;row4&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;row7&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;row3&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;row8&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;row6&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;row9&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;row5&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- With branch display and ordering
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;connectby&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;connectby_tree&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;keyid&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;parent_keyid&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;pos&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;row2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;~&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;keyid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;parent_keyid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;level&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;branch&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pos&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;keyid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;parent_keyid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;level&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;       &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;branch&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pos&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-------+--------------+-------+---------------------+-----
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row2&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;              &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row2&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;                &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row5&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row2&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;         &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row2&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;~&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row5&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;           &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row9&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row5&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;         &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row2&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;~&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row5&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;~&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row9&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;3&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row4&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row2&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;         &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row2&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;~&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row4&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;           &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;4&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row6&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row4&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;         &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row2&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;~&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row4&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;~&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row6&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row8&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row6&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;         &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;3&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row2&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;~&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row4&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;~&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row6&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;~&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;row8&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;|&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;6&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;Parameters: &lt;code&gt;connectby(relname, keyid_fld, parent_keyid_fld [, orderby_fld], start_with, max_depth [, branch_delim])&lt;/code&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;start_with&lt;/code&gt;: key value of the row to start at (text)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;max_depth&lt;/code&gt;: maximum depth to descend (0 = unlimited)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;branch_delim&lt;/code&gt;: separator for branch output (optional, default &lt;code&gt;~&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Index the parent-key field for performance on large tables&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>bloom</title>
      <link>https://ext.pgsty.com/e/bloom/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/bloom/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/bloom.html&#34;&gt;&lt;strong&gt;bloom&lt;/strong&gt;&lt;/a&gt; : bloom access method - signature file based index&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;2990&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/bloom.html&#34;&gt;bloom&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/bloom&#34; title=&#34;Extension: bloom&#34;&gt;bloom&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-feat pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/feat/&#34; title=&#34;FEAT — Features&#34;&gt;&lt;i class=&#34;fa-solid fa-wand-magic-sparkles&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;FEAT&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/rum&#34; title=&#34;Extension: rum&#34;&gt;rum&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hll&#34; title=&#34;Extension: hll&#34;&gt;hll&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/roaringbitmap&#34; title=&#34;Extension: roaringbitmap&#34;&gt;roaringbitmap&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgfaceting&#34; title=&#34;Extension: pgfaceting&#34;&gt;pgfaceting&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/parray_gin&#34; title=&#34;Extension: parray_gin&#34;&gt;parray_gin&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/btree_gin&#34; title=&#34;Extension: btree_gin&#34;&gt;btree_gin&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/btree_gist&#34; title=&#34;Extension: btree_gist&#34;&gt;btree_gist&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/intarray&#34; title=&#34;Extension: intarray&#34;&gt;intarray&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-21425a2a-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-21425a2a-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-21425a2a-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bloom&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/bloom.html&#34;&gt;bloom: bloom access method - signature file based index&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;bloom&lt;/code&gt; extension provides an index access method based on &lt;a href=&#34;https://en.wikipedia.org/wiki/Bloom_filter&#34;&gt;Bloom filters&lt;/a&gt;. A Bloom filter is a space-efficient data structure that tests whether an element is a member of a set, with possible false positives but no false negatives.&lt;/p&gt;
&lt;p&gt;Bloom indexes are particularly useful for tables with many columns where queries test arbitrary combinations of columns. A single bloom index can replace multiple btree indexes while using significantly less space.&lt;/p&gt;
&lt;h3 id=&#34;create-bloom-index&#34;&gt;Create Bloom Index&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#create-bloom-index&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-21425a2a-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-21425a2a-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-21425a2a-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bloomidx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tbloom&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bloom&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i3&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i4&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i5&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i6&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;With custom parameters:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-21425a2a-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;2&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-21425a2a-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-21425a2a-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bloomidx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tbloom&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bloom&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i3&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;       &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WITH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;length&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;80&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;col1&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;col2&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;col3&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;4&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;parameters&#34;&gt;Parameters&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#parameters&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Parameter&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Default&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Max&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;length&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;80&lt;/td&gt;
      &lt;td&gt;4096&lt;/td&gt;
      &lt;td&gt;Length of each signature in bits (rounded to nearest 16)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;col1&lt;/code&gt; - &lt;code&gt;col32&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;2&lt;/td&gt;
      &lt;td&gt;4095&lt;/td&gt;
      &lt;td&gt;Number of bits generated for each index column&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;operator-class-support&#34;&gt;Operator Class Support&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#operator-class-support&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Bloom indexes only support the equality operator (&lt;code&gt;=&lt;/code&gt;). Built-in operator classes exist for &lt;code&gt;int4&lt;/code&gt; and &lt;code&gt;text&lt;/code&gt;. You can define custom operator classes for other types that have a hash function:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-21425a2a-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;4&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-21425a2a-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-21425a2a-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;OPERATOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;CLASS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;text_ops&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;DEFAULT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bloom&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;OPERATOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hashtext&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;example&#34;&gt;Example&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#example&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-21425a2a-fence-4&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;16&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-21425a2a-fence-4&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-21425a2a-fence-4-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Create a table with many columns
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TABLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tbloom&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;random&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1000000&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)::&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;as&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;random&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1000000&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)::&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;as&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;random&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1000000&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)::&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;as&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i3&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;random&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1000000&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)::&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;as&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i4&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;random&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1000000&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)::&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;as&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i5&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;random&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1000000&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)::&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;as&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i6&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;generate_series&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;10000000&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- A single bloom index covers all column combinations
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bloomidx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tbloom&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bloom&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i3&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i4&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i5&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i6&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Queries on any subset of columns can use the index
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tbloom&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i2&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;898732&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AND&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i5&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;123451&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;limitations&#34;&gt;Limitations&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#limitations&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Only equality (&lt;code&gt;=&lt;/code&gt;) queries are supported (no range queries)&lt;/li&gt;
&lt;li&gt;Does not support &lt;code&gt;UNIQUE&lt;/code&gt; indexes&lt;/li&gt;
&lt;li&gt;Does not support searching for &lt;code&gt;NULL&lt;/code&gt; values&lt;/li&gt;
&lt;li&gt;Results require recheck against heap due to false positives&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>pltcl</title>
      <link>https://ext.pgsty.com/e/pltcl/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/pltcl/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/pltcl.html&#34;&gt;&lt;strong&gt;pltcl&lt;/strong&gt;&lt;/a&gt; : PL/Tcl procedural language&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3240&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/pltcl.html&#34;&gt;pltcl&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pltcl&#34; title=&#34;Extension: pltcl&#34;&gt;pltcl&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-lang pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/lang/&#34; title=&#34;LANG — Procedural Languages&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;LANG&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Schemas&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;pg_catalog&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperl&#34; title=&#34;Extension: plperl&#34;&gt;plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperlu&#34; title=&#34;Extension: plperlu&#34;&gt;plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpython3u&#34; title=&#34;Extension: plpython3u&#34;&gt;plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pljava&#34; title=&#34;Extension: pljava&#34;&gt;pljava&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plsh&#34; title=&#34;Extension: plsh&#34;&gt;plsh&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plr&#34; title=&#34;Extension: plr&#34;&gt;plr&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plxslt&#34; title=&#34;Extension: plxslt&#34;&gt;plxslt&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpgsql&#34; title=&#34;Extension: plpgsql&#34;&gt;plpgsql&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Siblings&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pltclu&#34; title=&#34;Extension: pltclu&#34;&gt;pltclu&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-317bad2a-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-317bad2a-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-317bad2a-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pltcl&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/pltcl.html&#34;&gt;pltcl: PL/Tcl trusted procedural language&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;PL/Tcl allows writing PostgreSQL functions in the Tcl programming language. As a trusted language, it restricts access to the filesystem and other system resources.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-317bad2a-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;31&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-317bad2a-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-317bad2a-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pltcl&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Simple function returning a greeting
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tcl_hello&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pltcl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Hello, $1!&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tcl_hello&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;world&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Function with conditional logic
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tcl_max&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;b&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pltcl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{$&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Set-returning function
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tcl_sequence&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;count&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;SETOF&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pltcl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;for&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;lt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;incr&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;return_next&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Trigger function
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tcl_audit&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;trigger&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pltcl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;NEW&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;modified_at&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;clock&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;format&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;clock&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;seconds&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;format&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;%Y-%m-%d %H:%M:%S&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;array&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;get&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;NEW&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;Database access from PL/Tcl uses the &lt;code&gt;spi_exec&lt;/code&gt; command:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-317bad2a-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;5&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-317bad2a-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-317bad2a-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tcl_count_rows&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tbl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pltcl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;spi_exec&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;SELECT count(*) AS cnt FROM $1&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;cnt&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>pltclu</title>
      <link>https://ext.pgsty.com/e/pltclu/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/pltclu/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/pltcl.html&#34;&gt;&lt;strong&gt;pltcl&lt;/strong&gt;&lt;/a&gt; : PL/TclU untrusted procedural language&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3250&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/pltcl.html&#34;&gt;pltclu&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pltclu&#34; title=&#34;Extension: pltclu&#34;&gt;pltcl&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-lang pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/lang/&#34; title=&#34;LANG — Procedural Languages&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;LANG&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;----d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Schemas&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;pg_catalog&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperl&#34; title=&#34;Extension: plperl&#34;&gt;plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperlu&#34; title=&#34;Extension: plperlu&#34;&gt;plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpython3u&#34; title=&#34;Extension: plpython3u&#34;&gt;plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pljava&#34; title=&#34;Extension: pljava&#34;&gt;pljava&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plsh&#34; title=&#34;Extension: plsh&#34;&gt;plsh&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plr&#34; title=&#34;Extension: plr&#34;&gt;plr&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plxslt&#34; title=&#34;Extension: plxslt&#34;&gt;plxslt&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpgsql&#34; title=&#34;Extension: plpgsql&#34;&gt;plpgsql&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Siblings&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pltcl&#34; title=&#34;Extension: pltcl&#34;&gt;pltcl&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-8316b1e9-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-8316b1e9-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-8316b1e9-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pltclu&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/pltcl.html&#34;&gt;pltclu: PL/Tcl untrusted procedural language&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;PL/Tcl Untrusted provides full Tcl capabilities including filesystem access and external program execution. Only superusers can create functions in this language.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-8316b1e9-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;27&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-8316b1e9-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-8316b1e9-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pltclu&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Read a file from the server filesystem
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;read_file&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;filename&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pltclu&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fd&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;open&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;r&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;content&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;read&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fd&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;close&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fd&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;content&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Execute an external command
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;run_command&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;cmd&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pltclu&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;exec&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}$&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Access environment variables
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get_env&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;varname&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pltclu&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;info&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;exists&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;env&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)]&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;env&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get_env&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;HOME&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>plperl</title>
      <link>https://ext.pgsty.com/e/plperl/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/plperl/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;&lt;strong&gt;plperl&lt;/strong&gt;&lt;/a&gt; : PL/Perl procedural language&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3260&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;plperl&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperl&#34; title=&#34;Extension: plperl&#34;&gt;plperl&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-lang pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/lang/&#34; title=&#34;LANG — Procedural Languages&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;LANG&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Schemas&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;pg_catalog&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Need By&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/bool_plperl&#34; title=&#34;Extension: bool_plperl&#34;&gt;bool_plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plperl&#34; title=&#34;Extension: hstore_plperl&#34;&gt;hstore_plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plperl&#34; title=&#34;Extension: jsonb_plperl&#34;&gt;jsonb_plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/sparql&#34; title=&#34;Extension: sparql&#34;&gt;sparql&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperlu&#34; title=&#34;Extension: plperlu&#34;&gt;plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpython3u&#34; title=&#34;Extension: plpython3u&#34;&gt;plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pllua&#34; title=&#34;Extension: pllua&#34;&gt;pllua&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pltcl&#34; title=&#34;Extension: pltcl&#34;&gt;pltcl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plsh&#34; title=&#34;Extension: plsh&#34;&gt;plsh&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pljava&#34; title=&#34;Extension: pljava&#34;&gt;pljava&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plr&#34; title=&#34;Extension: plr&#34;&gt;plr&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plxslt&#34; title=&#34;Extension: plxslt&#34;&gt;plxslt&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpgsql&#34; title=&#34;Extension: plpgsql&#34;&gt;plpgsql&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plv8&#34; title=&#34;Extension: plv8&#34;&gt;plv8&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Siblings&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/bool_plperl&#34; title=&#34;Extension: bool_plperl&#34;&gt;bool_plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plperl&#34; title=&#34;Extension: hstore_plperl&#34;&gt;hstore_plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plperl&#34; title=&#34;Extension: jsonb_plperl&#34;&gt;jsonb_plperl&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-b7c026d3-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-b7c026d3-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-b7c026d3-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperl&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;plperl: PL/Perl trusted procedural language&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;PL/Perl allows writing PostgreSQL functions in Perl. As a trusted language, it runs in a restricted environment without access to the filesystem or external modules.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-b7c026d3-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;46&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-b7c026d3-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-b7c026d3-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperl&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Simple scalar function
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;perl_hello&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;_&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Hello, $name!&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;perl_hello&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;world&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Using Perl regex for text processing
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;clean_whitespace&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;_&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=~&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;s&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/^&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;\&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;s&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+|&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;\&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;s&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;//&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;g&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;#&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;trim&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=~&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;s&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;\&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;s&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+/&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;g&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;         &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;#&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;collapse&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;internal&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;whitespace&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Returning a composite type
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name_parts&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;first_name&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;last_name&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;split_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name_parts&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;full&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;_&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;first&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;last&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;split&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;\&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;s&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+/&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;full&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;first_name&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;first&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;last_name&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;last&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Set-returning function
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;perl_generate_series&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;SETOF&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;start&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;stop&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;_&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;for&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;start&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;..&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;stop&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;return_next&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;undef&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Trigger function
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;perl_audit_trigger&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;trigger&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;_TD&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;new&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;modified_at&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;localtime&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;();&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;MODIFY&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;Database access uses &lt;code&gt;spi_exec_query&lt;/code&gt;:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-b7c026d3-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;6&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-b7c026d3-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-b7c026d3-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;perl_row_count&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;table&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;_&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;rv&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;spi_exec_query&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;SELECT count(*) AS cnt FROM $table&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;rv&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;rows&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;cnt&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>bool_plperl</title>
      <link>https://ext.pgsty.com/e/bool_plperl/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/bool_plperl/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;&lt;strong&gt;plperl&lt;/strong&gt;&lt;/a&gt; : transform between bool and plperl&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3261&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;bool_plperl&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/bool_plperl&#34; title=&#34;Extension: bool_plperl&#34;&gt;plperl&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-lang pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/lang/&#34; title=&#34;LANG — Procedural Languages&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;LANG&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Requires&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperl&#34; title=&#34;Extension: plperl&#34;&gt;plperl&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperlu&#34; title=&#34;Extension: plperlu&#34;&gt;plperlu&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Siblings&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperl&#34; title=&#34;Extension: plperl&#34;&gt;plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plperl&#34; title=&#34;Extension: hstore_plperl&#34;&gt;hstore_plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plperl&#34; title=&#34;Extension: jsonb_plperl&#34;&gt;jsonb_plperl&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-589a5222-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-589a5222-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-589a5222-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bool_plperl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;CASCADE&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- requires plperl&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;bool_plperl: Transform between bool and PL/Perl&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides a transform for the &lt;code&gt;bool&lt;/code&gt; type for PL/Perl. When loaded, PostgreSQL &lt;code&gt;boolean&lt;/code&gt; values are automatically converted to Perl native boolean representations and vice versa, instead of being passed as strings.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-589a5222-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;13&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-589a5222-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-589a5222-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bool_plperl&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;check_flag&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;boolean&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRANSFORM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;boolean&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;#&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;is&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;native&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Perl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;boolean&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;or&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;undef&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;not&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;string&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;_&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;])&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;flag is set&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;flag is not set&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;check_flag&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- flag is set
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;check_flag&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;false&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- flag is not set&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>hstore_plperl</title>
      <link>https://ext.pgsty.com/e/hstore_plperl/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/hstore_plperl/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;&lt;strong&gt;plperl&lt;/strong&gt;&lt;/a&gt; : transform between hstore and plperl&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3262&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;hstore_plperl&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plperl&#34; title=&#34;Extension: hstore_plperl&#34;&gt;plperl&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-lang pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/lang/&#34; title=&#34;LANG — Procedural Languages&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;LANG&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Requires&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore&#34; title=&#34;Extension: hstore&#34;&gt;hstore&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperl&#34; title=&#34;Extension: plperl&#34;&gt;plperl&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plpython3u&#34; title=&#34;Extension: hstore_plpython3u&#34;&gt;hstore_plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_pllua&#34; title=&#34;Extension: hstore_pllua&#34;&gt;hstore_pllua&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plperlu&#34; title=&#34;Extension: hstore_plperlu&#34;&gt;hstore_plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore&#34; title=&#34;Extension: hstore&#34;&gt;hstore&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Siblings&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperl&#34; title=&#34;Extension: plperl&#34;&gt;plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/bool_plperl&#34; title=&#34;Extension: bool_plperl&#34;&gt;bool_plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plperl&#34; title=&#34;Extension: jsonb_plperl&#34;&gt;jsonb_plperl&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-27b8a572-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-27b8a572-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-27b8a572-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore_plperl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;CASCADE&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- requires hstore, plperl&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/hstore.html&#34;&gt;hstore_plperl: Transform between hstore and PL/Perl&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides a transform for the &lt;code&gt;hstore&lt;/code&gt; type for PL/Perl. When loaded, &lt;code&gt;hstore&lt;/code&gt; values are automatically converted to Perl hashes and vice versa.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-27b8a572-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;20&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-27b8a572-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-27b8a572-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore_plperl&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore_to_text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRANSFORM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;#&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;is&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;now&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Perl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hash&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;reference&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;result&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;for&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;key&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sort&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;keys&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;%&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;result&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;$key =&amp;gt; $val-&amp;gt;{$key}\n&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;result&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;make_hstore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;key&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRANSFORM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;k&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;v&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;_&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;k&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;v&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore_to_text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;a=&amp;gt;1, b=&amp;gt;2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;make_hstore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;color&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;blue&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>jsonb_plperl</title>
      <link>https://ext.pgsty.com/e/jsonb_plperl/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/jsonb_plperl/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;&lt;strong&gt;plperl&lt;/strong&gt;&lt;/a&gt; : transform between jsonb and plperl&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3263&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;jsonb_plperl&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plperl&#34; title=&#34;Extension: jsonb_plperl&#34;&gt;plperl&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-lang pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/lang/&#34; title=&#34;LANG — Procedural Languages&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;LANG&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;----dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Requires&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperl&#34; title=&#34;Extension: plperl&#34;&gt;plperl&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgbson&#34; title=&#34;Extension: pgbson&#34;&gt;pgbson&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgjq&#34; title=&#34;Extension: pgjq&#34;&gt;pgjq&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plperlu&#34; title=&#34;Extension: jsonb_plperlu&#34;&gt;jsonb_plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plpython3u&#34; title=&#34;Extension: jsonb_plpython3u&#34;&gt;jsonb_plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsquery&#34; title=&#34;Extension: jsquery&#34;&gt;jsquery&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_jsonschema&#34; title=&#34;Extension: pg_jsonschema&#34;&gt;pg_jsonschema&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonschema&#34; title=&#34;Extension: jsonschema&#34;&gt;jsonschema&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_projection&#34; title=&#34;Extension: pg_projection&#34;&gt;pg_projection&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Siblings&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperl&#34; title=&#34;Extension: plperl&#34;&gt;plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/bool_plperl&#34; title=&#34;Extension: bool_plperl&#34;&gt;bool_plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plperl&#34; title=&#34;Extension: hstore_plperl&#34;&gt;hstore_plperl&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-05761ad1-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-05761ad1-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-05761ad1-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb_plperl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;CASCADE&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- requires plperl&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/datatype-json.html&#34;&gt;jsonb_plperl: Transform between jsonb and PL/Perl&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides a transform for the &lt;code&gt;jsonb&lt;/code&gt; type for PL/Perl. When loaded, &lt;code&gt;jsonb&lt;/code&gt; values are automatically converted to Perl data structures (hashes, arrays, scalars) and vice versa.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-05761ad1-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;16&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-05761ad1-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-05761ad1-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb_plperl&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb_keys_sorted&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRANSFORM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;#&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;is&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;now&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Perl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hash&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;array&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;reference&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;join&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;, &amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sort&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;keys&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;%&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;build_jsonb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRANSFORM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;_&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb_keys_sorted&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;{&amp;#34;b&amp;#34;: 2, &amp;#34;a&amp;#34;: 1, &amp;#34;c&amp;#34;: 3}&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;build_jsonb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Alice&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;30&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>plperlu</title>
      <link>https://ext.pgsty.com/e/plperlu/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/plperlu/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;&lt;strong&gt;plperlu&lt;/strong&gt;&lt;/a&gt; : PL/PerlU untrusted procedural language&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3270&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;plperlu&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperlu&#34; title=&#34;Extension: plperlu&#34;&gt;plperlu&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-lang pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/lang/&#34; title=&#34;LANG — Procedural Languages&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;LANG&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Schemas&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;pg_catalog&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Need By&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/bool_plperlu&#34; title=&#34;Extension: bool_plperlu&#34;&gt;bool_plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plperlu&#34; title=&#34;Extension: hstore_plperlu&#34;&gt;hstore_plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plperlu&#34; title=&#34;Extension: jsonb_plperlu&#34;&gt;jsonb_plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_utl_smtp&#34; title=&#34;Extension: pg_utl_smtp&#34;&gt;pg_utl_smtp&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/sparql&#34; title=&#34;Extension: sparql&#34;&gt;sparql&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperl&#34; title=&#34;Extension: plperl&#34;&gt;plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpython3u&#34; title=&#34;Extension: plpython3u&#34;&gt;plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plluau&#34; title=&#34;Extension: plluau&#34;&gt;plluau&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pltclu&#34; title=&#34;Extension: pltclu&#34;&gt;pltclu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plsh&#34; title=&#34;Extension: plsh&#34;&gt;plsh&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pljava&#34; title=&#34;Extension: pljava&#34;&gt;pljava&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plr&#34; title=&#34;Extension: plr&#34;&gt;plr&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plxslt&#34; title=&#34;Extension: plxslt&#34;&gt;plxslt&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpgsql&#34; title=&#34;Extension: plpgsql&#34;&gt;plpgsql&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Siblings&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/bool_plperlu&#34; title=&#34;Extension: bool_plperlu&#34;&gt;bool_plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plperlu&#34; title=&#34;Extension: jsonb_plperlu&#34;&gt;jsonb_plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plperlu&#34; title=&#34;Extension: hstore_plperlu&#34;&gt;hstore_plperlu&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-42079ab7-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-42079ab7-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-42079ab7-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperlu&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;plperlu: PL/Perl untrusted procedural language&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;PL/Perl Untrusted provides full Perl capabilities including external module loading, filesystem access, and network operations. Only superusers can create functions in this language.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-42079ab7-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;44&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-42079ab7-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-42079ab7-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperlu&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Use external CPAN modules
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fetch_url&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperlu&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;use&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;LWP&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;Simple&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;url&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;_&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;url&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Read a file from the server filesystem
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;read_server_file&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperlu&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;path&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;_&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;open&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fh&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&amp;lt;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;path&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;or&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;die&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Cannot open $path: $!&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;local&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;content&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fh&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;close&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fh&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;content&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- JSON processing with external module
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;parse_json_key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperlu&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;use&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;JSON&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;json_str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;_&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;data&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;decode_json&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;json_str&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;data&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;key&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Send email using Net::SMTP
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;send_email&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;boolean&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperlu&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;use&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Net&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;SMTP&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;to&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;subject&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;body&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;_&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;smtp&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Net&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;SMTP&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;new&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;localhost&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;smtp&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;mail&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;postgres@localhost&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;smtp&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;to&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;to&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;smtp&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;data&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;();&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;smtp&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;datasend&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Subject: $subject\n\n$body&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;smtp&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dataend&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;();&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;smtp&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;quit&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;();&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>bool_plperlu</title>
      <link>https://ext.pgsty.com/e/bool_plperlu/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/bool_plperlu/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;&lt;strong&gt;plperlu&lt;/strong&gt;&lt;/a&gt; : transform between bool and plperlu&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3271&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;bool_plperlu&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/bool_plperlu&#34; title=&#34;Extension: bool_plperlu&#34;&gt;plperlu&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-lang pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/lang/&#34; title=&#34;LANG — Procedural Languages&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;LANG&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;----d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Requires&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperlu&#34; title=&#34;Extension: plperlu&#34;&gt;plperlu&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperl&#34; title=&#34;Extension: plperl&#34;&gt;plperl&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Siblings&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperlu&#34; title=&#34;Extension: plperlu&#34;&gt;plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plperlu&#34; title=&#34;Extension: jsonb_plperlu&#34;&gt;jsonb_plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plperlu&#34; title=&#34;Extension: hstore_plperlu&#34;&gt;hstore_plperlu&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-13fafe9d-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-13fafe9d-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-13fafe9d-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bool_plperlu&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;CASCADE&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- requires plperlu&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;bool_plperlu: Transform between bool and PL/Perl untrusted&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides a transform for the &lt;code&gt;bool&lt;/code&gt; type for PL/Perl Untrusted. When loaded, PostgreSQL &lt;code&gt;boolean&lt;/code&gt; values are automatically converted to Perl native boolean representations and vice versa, instead of being passed as strings.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-13fafe9d-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;13&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-13fafe9d-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-13fafe9d-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bool_plperlu&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;check_flag_u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;boolean&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperlu&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRANSFORM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;boolean&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;#&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;is&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;native&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Perl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;boolean&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;or&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;undef&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;not&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;string&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;_&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;])&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;flag is set&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;flag is not set&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;check_flag_u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- flag is set
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;check_flag_u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;false&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- flag is not set&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>jsonb_plperlu</title>
      <link>https://ext.pgsty.com/e/jsonb_plperlu/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/jsonb_plperlu/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;&lt;strong&gt;plperlu&lt;/strong&gt;&lt;/a&gt; : transform between jsonb and plperlu&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3272&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;jsonb_plperlu&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plperlu&#34; title=&#34;Extension: jsonb_plperlu&#34;&gt;plperlu&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-lang pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/lang/&#34; title=&#34;LANG — Procedural Languages&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;LANG&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;----d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Requires&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperlu&#34; title=&#34;Extension: plperlu&#34;&gt;plperlu&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgbson&#34; title=&#34;Extension: pgbson&#34;&gt;pgbson&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgjq&#34; title=&#34;Extension: pgjq&#34;&gt;pgjq&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plperl&#34; title=&#34;Extension: jsonb_plperl&#34;&gt;jsonb_plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plpython3u&#34; title=&#34;Extension: jsonb_plpython3u&#34;&gt;jsonb_plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsquery&#34; title=&#34;Extension: jsquery&#34;&gt;jsquery&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_jsonschema&#34; title=&#34;Extension: pg_jsonschema&#34;&gt;pg_jsonschema&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonschema&#34; title=&#34;Extension: jsonschema&#34;&gt;jsonschema&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_projection&#34; title=&#34;Extension: pg_projection&#34;&gt;pg_projection&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Siblings&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperlu&#34; title=&#34;Extension: plperlu&#34;&gt;plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/bool_plperlu&#34; title=&#34;Extension: bool_plperlu&#34;&gt;bool_plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plperlu&#34; title=&#34;Extension: hstore_plperlu&#34;&gt;hstore_plperlu&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-ddbbe2f9-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-ddbbe2f9-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-ddbbe2f9-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb_plperlu&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;CASCADE&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- requires plperlu&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/datatype-json.html&#34;&gt;jsonb_plperlu: Transform between jsonb and PL/Perl untrusted&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides a transform for the &lt;code&gt;jsonb&lt;/code&gt; type for PL/Perl Untrusted. When loaded, &lt;code&gt;jsonb&lt;/code&gt; values are automatically converted to Perl data structures (hashes, arrays, scalars) and vice versa.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-ddbbe2f9-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;17&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-ddbbe2f9-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-ddbbe2f9-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb_plperlu&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;process_json_u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperlu&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRANSFORM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;use&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;JSON&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;#&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;is&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;already&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Perl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;data&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;structure&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;re&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;encode&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;with&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sorting&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;encode_json&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;build_jsonb_u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperlu&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRANSFORM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;_&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;process_json_u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;{&amp;#34;b&amp;#34;: 2, &amp;#34;a&amp;#34;: 1}&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;build_jsonb_u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Alice&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;30&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>hstore_plperlu</title>
      <link>https://ext.pgsty.com/e/hstore_plperlu/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/hstore_plperlu/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;&lt;strong&gt;plperlu&lt;/strong&gt;&lt;/a&gt; : transform between hstore and plperlu&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3273&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/plperl.html&#34;&gt;hstore_plperlu&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plperlu&#34; title=&#34;Extension: hstore_plperlu&#34;&gt;plperlu&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-lang pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/lang/&#34; title=&#34;LANG — Procedural Languages&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;LANG&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;----d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Requires&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore&#34; title=&#34;Extension: hstore&#34;&gt;hstore&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperlu&#34; title=&#34;Extension: plperlu&#34;&gt;plperlu&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plpython3u&#34; title=&#34;Extension: hstore_plpython3u&#34;&gt;hstore_plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_pllua&#34; title=&#34;Extension: hstore_pllua&#34;&gt;hstore_pllua&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plperl&#34; title=&#34;Extension: hstore_plperl&#34;&gt;hstore_plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore&#34; title=&#34;Extension: hstore&#34;&gt;hstore&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Siblings&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperlu&#34; title=&#34;Extension: plperlu&#34;&gt;plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/bool_plperlu&#34; title=&#34;Extension: bool_plperlu&#34;&gt;bool_plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plperlu&#34; title=&#34;Extension: jsonb_plperlu&#34;&gt;jsonb_plperlu&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-143b0366-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-143b0366-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-143b0366-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore_plperlu&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;CASCADE&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- requires hstore, plperlu&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/hstore.html&#34;&gt;hstore_plperlu: Transform between hstore and PL/Perl untrusted&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides a transform for the &lt;code&gt;hstore&lt;/code&gt; type for PL/Perl Untrusted. When loaded, &lt;code&gt;hstore&lt;/code&gt; values are automatically converted to Perl hashes and vice versa.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-143b0366-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;17&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-143b0366-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-143b0366-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore_plperlu&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore_to_json_u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperlu&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRANSFORM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;use&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;JSON&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;#&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;is&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;now&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Perl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hash&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;reference&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;encode_json&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;make_hstore_u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;key&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plperlu&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRANSFORM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;k&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;v&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;_&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;k&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;v&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore_to_json_u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;a=&amp;gt;1, b=&amp;gt;2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;make_hstore_u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;color&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;blue&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>plpgsql</title>
      <link>https://ext.pgsty.com/e/plpgsql/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/plpgsql/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plpgsql.html&#34;&gt;&lt;strong&gt;plpgsql&lt;/strong&gt;&lt;/a&gt; : PL/pgSQL procedural language&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3280&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/plpgsql.html&#34;&gt;plpgsql&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpgsql&#34; title=&#34;Extension: plpgsql&#34;&gt;plpgsql&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-lang pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/lang/&#34; title=&#34;LANG — Procedural Languages&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;LANG&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Schemas&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;pg_catalog&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Need By&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/bedquilt&#34; title=&#34;Extension: bedquilt&#34;&gt;bedquilt&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/biscuit&#34; title=&#34;Extension: biscuit&#34;&gt;biscuit&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/cat_tools&#34; title=&#34;Extension: cat_tools&#34;&gt;cat_tools&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/check_orapg&#34; title=&#34;Extension: check_orapg&#34;&gt;check_orapg&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/currency&#34; title=&#34;Extension: currency&#34;&gt;currency&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/data_historization&#34; title=&#34;Extension: data_historization&#34;&gt;data_historization&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/db2fce&#34; title=&#34;Extension: db2fce&#34;&gt;db2fce&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/dbpatch&#34; title=&#34;Extension: dbpatch&#34;&gt;dbpatch&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/dbstat&#34; title=&#34;Extension: dbstat&#34;&gt;dbstat&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ddl_historization&#34; title=&#34;Extension: ddl_historization&#34;&gt;ddl_historization&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/drop_role_helper&#34; title=&#34;Extension: drop_role_helper&#34;&gt;drop_role_helper&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/dsef&#34; title=&#34;Extension: dsef&#34;&gt;dsef&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/event_manager&#34; title=&#34;Extension: event_manager&#34;&gt;event_manager&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/explanation&#34; title=&#34;Extension: explanation&#34;&gt;explanation&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/firefly&#34; title=&#34;Extension: firefly&#34;&gt;firefly&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/geekspeak&#34; title=&#34;Extension: geekspeak&#34;&gt;geekspeak&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/generic_plan&#34; title=&#34;Extension: generic_plan&#34;&gt;generic_plan&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/gogudb&#34; title=&#34;Extension: gogudb&#34;&gt;gogudb&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/grants_manager&#34; title=&#34;Extension: grants_manager&#34;&gt;grants_manager&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hello-world&#34; title=&#34;Extension: hello-world&#34;&gt;hello-world&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hybrid_search&#34; title=&#34;Extension: hybrid_search&#34;&gt;hybrid_search&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/index_analyzer&#34; title=&#34;Extension: index_analyzer&#34;&gt;index_analyzer&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/istoria&#34; title=&#34;Extension: istoria&#34;&gt;istoria&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/italian_codes&#34; title=&#34;Extension: italian_codes&#34;&gt;italian_codes&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/job_queue&#34; title=&#34;Extension: job_queue&#34;&gt;job_queue&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/json_query&#34; title=&#34;Extension: json_query&#34;&gt;json_query&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/json_utils&#34; title=&#34;Extension: json_utils&#34;&gt;json_utils&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_schema&#34; title=&#34;Extension: jsonb_schema&#34;&gt;jsonb_schema&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jx_io&#34; title=&#34;Extension: jx_io&#34;&gt;jx_io&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/keyhippo&#34; title=&#34;Extension: keyhippo&#34;&gt;keyhippo&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/kilobase&#34; title=&#34;Extension: kilobase&#34;&gt;kilobase&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/kissfft&#34; title=&#34;Extension: kissfft&#34;&gt;kissfft&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/lab-orders&#34; title=&#34;Extension: lab-orders&#34;&gt;lab-orders&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/launchql-base32&#34; title=&#34;Extension: launchql-base32&#34;&gt;launchql-base32&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/launchql-ext-types&#34; title=&#34;Extension: launchql-ext-types&#34;&gt;launchql-ext-types&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/launchql-extension-utils&#34; title=&#34;Extension: launchql-extension-utils&#34;&gt;launchql-extension-utils&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/launchql-extension-verify&#34; title=&#34;Extension: launchql-extension-verify&#34;&gt;launchql-extension-verify&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/launchql-inflection&#34; title=&#34;Extension: launchql-inflection&#34;&gt;launchql-inflection&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/launchql-jwt-claims&#34; title=&#34;Extension: launchql-jwt-claims&#34;&gt;launchql-jwt-claims&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/launchql-stamps&#34; title=&#34;Extension: launchql-stamps&#34;&gt;launchql-stamps&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/launchql-totp&#34; title=&#34;Extension: launchql-totp&#34;&gt;launchql-totp&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/livewire&#34; title=&#34;Extension: livewire&#34;&gt;livewire&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/medications&#34; title=&#34;Extension: medications&#34;&gt;medications&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/merge_ips&#34; title=&#34;Extension: merge_ips&#34;&gt;merge_ips&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/meta_triggers&#34; title=&#34;Extension: meta_triggers&#34;&gt;meta_triggers&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/migration&#34; title=&#34;Extension: migration&#34;&gt;migration&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/monitoring_role&#34; title=&#34;Extension: monitoring_role&#34;&gt;monitoring_role&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/mv_rewrite&#34; title=&#34;Extension: mv_rewrite&#34;&gt;mv_rewrite&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/mv_stats&#34; title=&#34;Extension: mv_stats&#34;&gt;mv_stats&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/myhelper&#34; title=&#34;Extension: myhelper&#34;&gt;myhelper&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/mypg_sharding&#34; title=&#34;Extension: mypg_sharding&#34;&gt;mypg_sharding&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/mysqlcompat&#34; title=&#34;Extension: mysqlcompat&#34;&gt;mysqlcompat&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/newsfeeds&#34; title=&#34;Extension: newsfeeds&#34;&gt;newsfeeds&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/nfiesta_gisdata&#34; title=&#34;Extension: nfiesta_gisdata&#34;&gt;nfiesta_gisdata&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/nfiesta_sdesign&#34; title=&#34;Extension: nfiesta_sdesign&#34;&gt;nfiesta_sdesign&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/nfiesta_target_data&#34; title=&#34;Extension: nfiesta_target_data&#34;&gt;nfiesta_target_data&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/nonoms&#34; title=&#34;Extension: nonoms&#34;&gt;nonoms&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/norm&#34; title=&#34;Extension: norm&#34;&gt;norm&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/npm&#34; title=&#34;Extension: npm&#34;&gt;npm&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ollama&#34; title=&#34;Extension: ollama&#34;&gt;ollama&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/omnidb_plpgsql_debugger&#34; title=&#34;Extension: omnidb_plpgsql_debugger&#34;&gt;omnidb_plpgsql_debugger&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/partman_to_cstore&#34; title=&#34;Extension: partman_to_cstore&#34;&gt;partman_to_cstore&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pase&#34; title=&#34;Extension: pase&#34;&gt;pase&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pathman_sharding&#34; title=&#34;Extension: pathman_sharding&#34;&gt;pathman_sharding&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/patients&#34; title=&#34;Extension: patients&#34;&gt;patients&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg-audit-json&#34; title=&#34;Extension: pg-audit-json&#34;&gt;pg-audit-json&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg2podg&#34; title=&#34;Extension: pg2podg&#34;&gt;pg2podg&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg4ml&#34; title=&#34;Extension: pg4ml&#34;&gt;pg4ml&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgAutomator&#34; title=&#34;Extension: pgAutomator&#34;&gt;pgAutomator&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_abris&#34; title=&#34;Extension: pg_abris&#34;&gt;pg_abris&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_accumulator&#34; title=&#34;Extension: pg_accumulator&#34;&gt;pg_accumulator&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_audit&#34; title=&#34;Extension: pg_audit&#34;&gt;pg_audit&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_audit_tools&#34; title=&#34;Extension: pg_audit_tools&#34;&gt;pg_audit_tools&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_biscuit&#34; title=&#34;Extension: pg_biscuit&#34;&gt;pg_biscuit&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_bleve&#34; title=&#34;Extension: pg_bleve&#34;&gt;pg_bleve&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_bm25&#34; title=&#34;Extension: pg_bm25&#34;&gt;pg_bm25&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_cache_tree&#34; title=&#34;Extension: pg_cache_tree&#34;&gt;pg_cache_tree&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_calcpi&#34; title=&#34;Extension: pg_calcpi&#34;&gt;pg_calcpi&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_catalog_get_defs&#34; title=&#34;Extension: pg_catalog_get_defs&#34;&gt;pg_catalog_get_defs&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_column_tetris&#34; title=&#34;Extension: pg_column_tetris&#34;&gt;pg_column_tetris&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_credereum&#34; title=&#34;Extension: pg_credereum&#34;&gt;pg_credereum&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_datatype_password&#34; title=&#34;Extension: pg_datatype_password&#34;&gt;pg_datatype_password&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_dbo_timestamp&#34; title=&#34;Extension: pg_dbo_timestamp&#34;&gt;pg_dbo_timestamp&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_dbwa&#34; title=&#34;Extension: pg_dbwa&#34;&gt;pg_dbwa&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_dms&#34; title=&#34;Extension: pg_dms&#34;&gt;pg_dms&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_drop_events&#34; title=&#34;Extension: pg_drop_events&#34;&gt;pg_drop_events&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_dropbuffers&#34; title=&#34;Extension: pg_dropbuffers&#34;&gt;pg_dropbuffers&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_dropcache&#34; title=&#34;Extension: pg_dropcache&#34;&gt;pg_dropcache&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_eyes&#34; title=&#34;Extension: pg_eyes&#34;&gt;pg_eyes&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_fairmlq&#34; title=&#34;Extension: pg_fairmlq&#34;&gt;pg_fairmlq&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_fsql&#34; title=&#34;Extension: pg_fsql&#34;&gt;pg_fsql&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_gen_uid&#34; title=&#34;Extension: pg_gen_uid&#34;&gt;pg_gen_uid&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_git&#34; title=&#34;Extension: pg_git&#34;&gt;pg_git&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_graphql_server&#34; title=&#34;Extension: pg_graphql_server&#34;&gt;pg_graphql_server&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_gsl&#34; title=&#34;Extension: pg_gsl&#34;&gt;pg_gsl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_idm&#34; title=&#34;Extension: pg_idm&#34;&gt;pg_idm&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_idx_advisor&#34; title=&#34;Extension: pg_idx_advisor&#34;&gt;pg_idx_advisor&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_lake_iceberg&#34; title=&#34;Extension: pg_lake_iceberg&#34;&gt;pg_lake_iceberg&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_landmetrics&#34; title=&#34;Extension: pg_landmetrics&#34;&gt;pg_landmetrics&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_ledger&#34; title=&#34;Extension: pg_ledger&#34;&gt;pg_ledger&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_linegazer&#34; title=&#34;Extension: pg_linegazer&#34;&gt;pg_linegazer&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_llm_helper&#34; title=&#34;Extension: pg_llm_helper&#34;&gt;pg_llm_helper&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_lock_pool&#34; title=&#34;Extension: pg_lock_pool&#34;&gt;pg_lock_pool&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_message_queue&#34; title=&#34;Extension: pg_message_queue&#34;&gt;pg_message_queue&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_monitoring&#34; title=&#34;Extension: pg_monitoring&#34;&gt;pg_monitoring&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_normalize_email&#34; title=&#34;Extension: pg_normalize_email&#34;&gt;pg_normalize_email&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_once&#34; title=&#34;Extension: pg_once&#34;&gt;pg_once&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_os&#34; title=&#34;Extension: pg_os&#34;&gt;pg_os&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_osgr&#34; title=&#34;Extension: pg_osgr&#34;&gt;pg_osgr&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_pageprep&#34; title=&#34;Extension: pg_pageprep&#34;&gt;pg_pageprep&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_part&#34; title=&#34;Extension: pg_part&#34;&gt;pg_part&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_particulous&#34; title=&#34;Extension: pg_particulous&#34;&gt;pg_particulous&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_partman&#34; title=&#34;Extension: pg_partman&#34;&gt;pg_partman&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_pathman&#34; title=&#34;Extension: pg_pathman&#34;&gt;pg_pathman&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_paxos&#34; title=&#34;Extension: pg_paxos&#34;&gt;pg_paxos&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_popyramids_datamarts&#34; title=&#34;Extension: pg_popyramids_datamarts&#34;&gt;pg_popyramids_datamarts&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_profile&#34; title=&#34;Extension: pg_profile&#34;&gt;pg_profile&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_prometheus&#34; title=&#34;Extension: pg_prometheus&#34;&gt;pg_prometheus&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_prttn_tools&#34; title=&#34;Extension: pg_prttn_tools&#34;&gt;pg_prttn_tools&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_reversi&#34; title=&#34;Extension: pg_reversi&#34;&gt;pg_reversi&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_sakila_db&#34; title=&#34;Extension: pg_sakila_db&#34;&gt;pg_sakila_db&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_semantic_cache&#34; title=&#34;Extension: pg_semantic_cache&#34;&gt;pg_semantic_cache&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_sendmail&#34; title=&#34;Extension: pg_sendmail&#34;&gt;pg_sendmail&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_sentence_transformer&#34; title=&#34;Extension: pg_sentence_transformer&#34;&gt;pg_sentence_transformer&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_sessions&#34; title=&#34;Extension: pg_sessions&#34;&gt;pg_sessions&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_shardman&#34; title=&#34;Extension: pg_shardman&#34;&gt;pg_shardman&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_statviz&#34; title=&#34;Extension: pg_statviz&#34;&gt;pg_statviz&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_tileless&#34; title=&#34;Extension: pg_tileless&#34;&gt;pg_tileless&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_tms&#34; title=&#34;Extension: pg_tms&#34;&gt;pg_tms&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_turboquant&#34; title=&#34;Extension: pg_turboquant&#34;&gt;pg_turboquant&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_twkb&#34; title=&#34;Extension: pg_twkb&#34;&gt;pg_twkb&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_upless&#34; title=&#34;Extension: pg_upless&#34;&gt;pg_upless&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_zlog&#34; title=&#34;Extension: pg_zlog&#34;&gt;pg_zlog&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgaut&#34; title=&#34;Extension: pgaut&#34;&gt;pgaut&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgcat&#34; title=&#34;Extension: pgcat&#34;&gt;pgcat&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgeyes&#34; title=&#34;Extension: pgeyes&#34;&gt;pgeyes&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgfsm&#34; title=&#34;Extension: pgfsm&#34;&gt;pgfsm&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgh_consistency&#34; title=&#34;Extension: pgh_consistency&#34;&gt;pgh_consistency&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgh_hgm&#34; title=&#34;Extension: pgh_hgm&#34;&gt;pgh_hgm&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgh_output&#34; title=&#34;Extension: pgh_output&#34;&gt;pgh_output&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgh_output_en_au&#34; title=&#34;Extension: pgh_output_en_au&#34;&gt;pgh_output_en_au&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgh_output_pt_br&#34; title=&#34;Extension: pgh_output_pt_br&#34;&gt;pgh_output_pt_br&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgh_raster&#34; title=&#34;Extension: pgh_raster&#34;&gt;pgh_raster&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pghydro&#34; title=&#34;Extension: pghydro&#34;&gt;pghydro&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgmemento&#34; title=&#34;Extension: pgmemento&#34;&gt;pgmemento&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgmock&#34; title=&#34;Extension: pgmock&#34;&gt;pgmock&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgnats&#34; title=&#34;Extension: pgnats&#34;&gt;pgnats&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgparts&#34; title=&#34;Extension: pgparts&#34;&gt;pgparts&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgpm-base32&#34; title=&#34;Extension: pgpm-base32&#34;&gt;pgpm-base32&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgpm-defaults&#34; title=&#34;Extension: pgpm-defaults&#34;&gt;pgpm-defaults&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgpm-faker&#34; title=&#34;Extension: pgpm-faker&#34;&gt;pgpm-faker&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgpm-inflection&#34; title=&#34;Extension: pgpm-inflection&#34;&gt;pgpm-inflection&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgpm-jwt-claims&#34; title=&#34;Extension: pgpm-jwt-claims&#34;&gt;pgpm-jwt-claims&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgpm-measurements&#34; title=&#34;Extension: pgpm-measurements&#34;&gt;pgpm-measurements&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgpm-types&#34; title=&#34;Extension: pgpm-types&#34;&gt;pgpm-types&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgpm-verify&#34; title=&#34;Extension: pgpm-verify&#34;&gt;pgpm-verify&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgrao&#34; title=&#34;Extension: pgrao&#34;&gt;pgrao&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgrollup&#34; title=&#34;Extension: pgrollup&#34;&gt;pgrollup&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgrouting&#34; title=&#34;Extension: pgrouting&#34;&gt;pgrouting&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgsqlmock&#34; title=&#34;Extension: pgsqlmock&#34;&gt;pgsqlmock&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgtap&#34; title=&#34;Extension: pgtap&#34;&gt;pgtap&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgtap_fixture&#34; title=&#34;Extension: pgtap_fixture&#34;&gt;pgtap_fixture&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgtelemetry&#34; title=&#34;Extension: pgtelemetry&#34;&gt;pgtelemetry&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgvroom&#34; title=&#34;Extension: pgvroom&#34;&gt;pgvroom&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plparrot&#34; title=&#34;Extension: plparrot&#34;&gt;plparrot&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpgsql_check&#34; title=&#34;Extension: plpgsql_check&#34;&gt;plpgsql_check&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpgsql_wrap&#34; title=&#34;Extension: plpgsql_wrap&#34;&gt;plpgsql_wrap&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plrust&#34; title=&#34;Extension: plrust&#34;&gt;plrust&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/postgres_ci&#34; title=&#34;Extension: postgres_ci&#34;&gt;postgres_ci&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/postpic&#34; title=&#34;Extension: postpic&#34;&gt;postpic&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/powa&#34; title=&#34;Extension: powa&#34;&gt;powa&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/prescriptions&#34; title=&#34;Extension: prescriptions&#34;&gt;prescriptions&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/qgres&#34; title=&#34;Extension: qgres&#34;&gt;qgres&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/quria&#34; title=&#34;Extension: quria&#34;&gt;quria&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/range_partitioning&#34; title=&#34;Extension: range_partitioning&#34;&gt;range_partitioning&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/recall&#34; title=&#34;Extension: recall&#34;&gt;recall&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/recursively_delete&#34; title=&#34;Extension: recursively_delete&#34;&gt;recursively_delete&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/rep_fdw&#34; title=&#34;Extension: rep_fdw&#34;&gt;rep_fdw&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/rls_helpers&#34; title=&#34;Extension: rls_helpers&#34;&gt;rls_helpers&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/roleman&#34; title=&#34;Extension: roleman&#34;&gt;roleman&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/rpg&#34; title=&#34;Extension: rpg&#34;&gt;rpg&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/rtiles&#34; title=&#34;Extension: rtiles&#34;&gt;rtiles&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/scheduling&#34; title=&#34;Extension: scheduling&#34;&gt;scheduling&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/session_variables&#34; title=&#34;Extension: session_variables&#34;&gt;session_variables&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/short_ids&#34; title=&#34;Extension: short_ids&#34;&gt;short_ids&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/skitch-extension-defaults&#34; title=&#34;Extension: skitch-extension-defaults&#34;&gt;skitch-extension-defaults&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/skitch-extension-jobs&#34; title=&#34;Extension: skitch-extension-jobs&#34;&gt;skitch-extension-jobs&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/skitch-extension-utils&#34; title=&#34;Extension: skitch-extension-utils&#34;&gt;skitch-extension-utils&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/skitch-extension-verify&#34; title=&#34;Extension: skitch-extension-verify&#34;&gt;skitch-extension-verify&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/sphinxlink&#34; title=&#34;Extension: sphinxlink&#34;&gt;sphinxlink&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/sql_saga&#34; title=&#34;Extension: sql_saga&#34;&gt;sql_saga&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/supa_queue&#34; title=&#34;Extension: supa_queue&#34;&gt;supa_queue&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/supabase&#34; title=&#34;Extension: supabase&#34;&gt;supabase&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/supabase_auth_apikey&#34; title=&#34;Extension: supabase_auth_apikey&#34;&gt;supabase_auth_apikey&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/sys_syn_dblink&#34; title=&#34;Extension: sys_syn_dblink&#34;&gt;sys_syn_dblink&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/tab_tier&#34; title=&#34;Extension: tab_tier&#34;&gt;tab_tier&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/table_log_pl&#34; title=&#34;Extension: table_log_pl&#34;&gt;table_log_pl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/table_version&#34; title=&#34;Extension: table_version&#34;&gt;table_version&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/tablelog&#34; title=&#34;Extension: tablelog&#34;&gt;tablelog&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/telephone&#34; title=&#34;Extension: telephone&#34;&gt;telephone&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/test_factory&#34; title=&#34;Extension: test_factory&#34;&gt;test_factory&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/time_for_keys&#34; title=&#34;Extension: time_for_keys&#34;&gt;time_for_keys&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/timestampandtz&#34; title=&#34;Extension: timestampandtz&#34;&gt;timestampandtz&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/town&#34; title=&#34;Extension: town&#34;&gt;town&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/types&#34; title=&#34;Extension: types&#34;&gt;types&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/unit&#34; title=&#34;Extension: unit&#34;&gt;unit&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/units&#34; title=&#34;Extension: units&#34;&gt;units&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/us-states&#34; title=&#34;Extension: us-states&#34;&gt;us-states&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/uuidv7-sql&#34; title=&#34;Extension: uuidv7-sql&#34;&gt;uuidv7-sql&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/variant&#34; title=&#34;Extension: variant&#34;&gt;variant&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/vectors&#34; title=&#34;Extension: vectors&#34;&gt;vectors&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/vrprouting&#34; title=&#34;Extension: vrprouting&#34;&gt;vrprouting&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/wasm&#34; title=&#34;Extension: wasm&#34;&gt;wasm&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/webauthn&#34; title=&#34;Extension: webauthn&#34;&gt;webauthn&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/xl_global_views&#34; title=&#34;Extension: xl_global_views&#34;&gt;xl_global_views&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/zombodb&#34; title=&#34;Extension: zombodb&#34;&gt;zombodb&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plx&#34; title=&#34;Extension: plx&#34;&gt;plx&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plisql&#34; title=&#34;Extension: plisql&#34;&gt;plisql&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpgsql_check&#34; title=&#34;Extension: plpgsql_check&#34;&gt;plpgsql_check&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pldbgapi&#34; title=&#34;Extension: pldbgapi&#34;&gt;pldbgapi&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpgsql_wrap&#34; title=&#34;Extension: plpgsql_wrap&#34;&gt;plpgsql_wrap&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/orafce&#34; title=&#34;Extension: orafce&#34;&gt;orafce&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plprofiler&#34; title=&#34;Extension: plprofiler&#34;&gt;plprofiler&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plsh&#34; title=&#34;Extension: plsh&#34;&gt;plsh&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pljava&#34; title=&#34;Extension: pljava&#34;&gt;pljava&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pglinter&#34; title=&#34;Extension: pglinter&#34;&gt;pglinter&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-d7056a33-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-d7056a33-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-d7056a33-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpgsql&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plpgsql.html&#34;&gt;plpgsql: PL/pgSQL procedural language&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;PL/pgSQL is PostgreSQL&amp;rsquo;s default procedural language. It extends SQL with control structures, variables, cursors, and exception handling.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-d7056a33-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;82&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-d7056a33-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-d7056a33-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpgsql&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- installed by default
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Basic function with variables and control flow
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;calculate_discount&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;price&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;numeric&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;quantity&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;numeric&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpgsql&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;DECLARE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;discount&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;numeric&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;BEGIN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;IF&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;quantity&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;100&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;THEN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;discount&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;20&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ELSIF&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;quantity&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;50&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;THEN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;discount&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;10&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ELSIF&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;quantity&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;10&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;THEN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;discount&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;05&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;END&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;IF&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;price&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;quantity&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;discount&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;END&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Loop and set-returning function
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fibonacci&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;n&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;SETOF&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpgsql&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;DECLARE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;b&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tmp&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;BEGIN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;IN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;..&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;n&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;LOOP&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;NEXT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tmp&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;b&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;b&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;b&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tmp&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;END&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;LOOP&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;END&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fibonacci&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;10&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Exception handling
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;safe_divide&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;numeric&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;b&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;numeric&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;numeric&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpgsql&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;BEGIN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;b&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;EXCEPTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHEN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;division_by_zero&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;THEN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;RAISE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;NOTICE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Division by zero, returning NULL&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;NULL&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;END&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Trigger function
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;update_modified_column&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;trigger&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpgsql&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;BEGIN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;NEW&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;modified_at&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;now&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;();&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;NEW&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;END&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRIGGER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;set_modified&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;BEFORE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;UPDATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my_table&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EACH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ROW&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EXECUTE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;update_modified_column&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;();&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Procedure with transaction control (PG 11+)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;PROCEDURE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;batch_archive&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;batch_size&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpgsql&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;DECLARE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;rows_moved&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;BEGIN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;LOOP&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WITH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;moved&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DELETE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;orders&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;status&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;completed&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;RETURNING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INTO&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;orders_archive&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;moved&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;GET&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DIAGNOSTICS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;rows_moved&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ROW_COUNT&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;COMMIT&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXIT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHEN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;rows_moved&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;batch_size&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;END&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;LOOP&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;END&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>plpython3u</title>
      <link>https://ext.pgsty.com/e/plpython3u/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/plpython3u/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plpython.html&#34;&gt;&lt;strong&gt;plpython3u&lt;/strong&gt;&lt;/a&gt; : PL/Python3U untrusted procedural language&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3290&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/plpython.html&#34;&gt;plpython3u&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpython3u&#34; title=&#34;Extension: plpython3u&#34;&gt;plpython3u&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-lang pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/lang/&#34; title=&#34;LANG — Procedural Languages&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;LANG&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Schemas&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;pg_catalog&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Need By&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plpython3u&#34; title=&#34;Extension: hstore_plpython3u&#34;&gt;hstore_plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plpython3u&#34; title=&#34;Extension: jsonb_plpython3u&#34;&gt;jsonb_plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ltree_plpython3u&#34; title=&#34;Extension: ltree_plpython3u&#34;&gt;ltree_plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/omni_python&#34; title=&#34;Extension: omni_python&#34;&gt;omni_python&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg4ml&#34; title=&#34;Extension: pg4ml&#34;&gt;pg4ml&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperl&#34; title=&#34;Extension: plperl&#34;&gt;plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plperlu&#34; title=&#34;Extension: plperlu&#34;&gt;plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pllua&#34; title=&#34;Extension: pllua&#34;&gt;pllua&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pltcl&#34; title=&#34;Extension: pltcl&#34;&gt;pltcl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plsh&#34; title=&#34;Extension: plsh&#34;&gt;plsh&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pljava&#34; title=&#34;Extension: pljava&#34;&gt;pljava&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plr&#34; title=&#34;Extension: plr&#34;&gt;plr&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plxslt&#34; title=&#34;Extension: plxslt&#34;&gt;plxslt&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpgsql&#34; title=&#34;Extension: plpgsql&#34;&gt;plpgsql&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plv8&#34; title=&#34;Extension: plv8&#34;&gt;plv8&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Siblings&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plpython3u&#34; title=&#34;Extension: jsonb_plpython3u&#34;&gt;jsonb_plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ltree_plpython3u&#34; title=&#34;Extension: ltree_plpython3u&#34;&gt;ltree_plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plpython3u&#34; title=&#34;Extension: hstore_plpython3u&#34;&gt;hstore_plpython3u&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-bd35f9b8-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-bd35f9b8-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-bd35f9b8-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpython3u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plpython.html&#34;&gt;plpython3u: PL/Python3 untrusted procedural language&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;PL/Python3U allows writing PostgreSQL functions in Python 3. It is an untrusted language with full access to the Python ecosystem. Only superusers can create functions.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-bd35f9b8-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;53&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-bd35f9b8-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-bd35f9b8-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpython3u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Simple function
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;py_hello&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpython3u&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Hello, {name}!&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;py_hello&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;world&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Using Python standard library
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;py_sha256&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;data&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpython3u&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;import&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hashlib&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hashlib&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sha256&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;data&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;encode&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()).&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hexdigest&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Returning a composite type
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;address&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;street&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;city&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;zip&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;parse_address&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;raw&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;address&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpython3u&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;import&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;re&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;m&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;re&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;match&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;r&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;(.+),\s*(.+)\s+(\d{5})&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;raw&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;m&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;m&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;group&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;m&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;group&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;m&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;group&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;3&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;None&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Set-returning function
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;py_generate_dates&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;start&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;days&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;SETOF&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;date&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpython3u&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;from&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;import&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;timedelta&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;d&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;datetime&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;strptime&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;start&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;%Y-%m-%d&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;for&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;in&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;range&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;days&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;yield&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;d&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;timedelta&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;days&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)).&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;strftime&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;%Y-%m-%d&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Database access via plpy
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;py_row_count&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;table_name&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;bigint&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpython3u&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;result&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpy&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;execute&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;SELECT count(*) AS cnt FROM {table_name}&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;result&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;][&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;cnt&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Using external packages (must be installed on the server)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;py_parse_json&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;url&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpython3u&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;import&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;json&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;urllib&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;response&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;urllib&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;request&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;urlopen&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;url&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;data&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;json&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;loads&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;response&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;read&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;())&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;json&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dumps&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;data&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>jsonb_plpython3u</title>
      <link>https://ext.pgsty.com/e/jsonb_plpython3u/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/jsonb_plpython3u/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plpython.html&#34;&gt;&lt;strong&gt;plpython3u&lt;/strong&gt;&lt;/a&gt; : transform between jsonb and plpython3u&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3291&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/plpython.html&#34;&gt;jsonb_plpython3u&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plpython3u&#34; title=&#34;Extension: jsonb_plpython3u&#34;&gt;plpython3u&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-lang pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/lang/&#34; title=&#34;LANG — Procedural Languages&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;LANG&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;----d-r&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Requires&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpython3u&#34; title=&#34;Extension: plpython3u&#34;&gt;plpython3u&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgbson&#34; title=&#34;Extension: pgbson&#34;&gt;pgbson&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgjq&#34; title=&#34;Extension: pgjq&#34;&gt;pgjq&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plperl&#34; title=&#34;Extension: jsonb_plperl&#34;&gt;jsonb_plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plperlu&#34; title=&#34;Extension: jsonb_plperlu&#34;&gt;jsonb_plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsquery&#34; title=&#34;Extension: jsquery&#34;&gt;jsquery&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_jsonschema&#34; title=&#34;Extension: pg_jsonschema&#34;&gt;pg_jsonschema&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonschema&#34; title=&#34;Extension: jsonschema&#34;&gt;jsonschema&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_projection&#34; title=&#34;Extension: pg_projection&#34;&gt;pg_projection&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Siblings&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpython3u&#34; title=&#34;Extension: plpython3u&#34;&gt;plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ltree_plpython3u&#34; title=&#34;Extension: ltree_plpython3u&#34;&gt;ltree_plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plpython3u&#34; title=&#34;Extension: hstore_plpython3u&#34;&gt;hstore_plpython3u&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-299c4462-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-299c4462-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-299c4462-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb_plpython3u&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;CASCADE&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- requires plpython3u&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/datatype-json.html&#34;&gt;jsonb_plpython3u: Transform between jsonb and PL/Python3&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides a transform for the &lt;code&gt;jsonb&lt;/code&gt; type for PL/Python3U. When loaded, &lt;code&gt;jsonb&lt;/code&gt; values are automatically converted to Python dicts, lists, and scalars, and vice versa.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-299c4462-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;15&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-299c4462-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-299c4462-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb_plpython3u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb_keys_sorted&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[]&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpython3u&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRANSFORM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;#&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;is&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;now&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Python&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dict&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sorted&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;keys&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;())&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;build_jsonb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpython3u&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRANSFORM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;age&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;age&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb_keys_sorted&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;{&amp;#34;b&amp;#34;: 2, &amp;#34;a&amp;#34;: 1, &amp;#34;c&amp;#34;: 3}&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;jsonb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;build_jsonb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Alice&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;30&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>ltree_plpython3u</title>
      <link>https://ext.pgsty.com/e/ltree_plpython3u/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/ltree_plpython3u/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plpython.html&#34;&gt;&lt;strong&gt;plpython3u&lt;/strong&gt;&lt;/a&gt; : transform between ltree and plpython3u&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3292&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/plpython.html&#34;&gt;ltree_plpython3u&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ltree_plpython3u&#34; title=&#34;Extension: ltree_plpython3u&#34;&gt;plpython3u&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-lang pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/lang/&#34; title=&#34;LANG — Procedural Languages&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;LANG&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-d-r&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Requires&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ltree&#34; title=&#34;Extension: ltree&#34;&gt;ltree&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpython3u&#34; title=&#34;Extension: plpython3u&#34;&gt;plpython3u&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ltree&#34; title=&#34;Extension: ltree&#34;&gt;ltree&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Siblings&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpython3u&#34; title=&#34;Extension: plpython3u&#34;&gt;plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plpython3u&#34; title=&#34;Extension: jsonb_plpython3u&#34;&gt;jsonb_plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plpython3u&#34; title=&#34;Extension: hstore_plpython3u&#34;&gt;hstore_plpython3u&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-bcb8644d-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-bcb8644d-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-bcb8644d-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ltree_plpython3u&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;CASCADE&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- requires ltree, plpython3u&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/ltree.html&#34;&gt;ltree_plpython3u: Transform between ltree and PL/Python3&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides a transform for the &lt;code&gt;ltree&lt;/code&gt; type for PL/Python3U. When loaded, &lt;code&gt;ltree&lt;/code&gt; values are automatically converted to Python strings and vice versa.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-bcb8644d-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;15&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-bcb8644d-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-bcb8644d-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ltree_plpython3u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ltree_depth&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ltree&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpython3u&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRANSFORM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ltree&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;#&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;is&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;now&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Python&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;string&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;like&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;a.b.c&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;len&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;split&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;.&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ltree_leaf&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ltree&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpython3u&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRANSFORM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ltree&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;split&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;.&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)[&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ltree_depth&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;top.science.astronomy&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ltree&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- 3
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ltree_leaf&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;top.science.astronomy&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ltree&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- astronomy&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>hstore_plpython3u</title>
      <link>https://ext.pgsty.com/e/hstore_plpython3u/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/hstore_plpython3u/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/plpython.html&#34;&gt;&lt;strong&gt;plpython3u&lt;/strong&gt;&lt;/a&gt; : transform between hstore and plpython3u&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3293&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/plpython.html&#34;&gt;hstore_plpython3u&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plpython3u&#34; title=&#34;Extension: hstore_plpython3u&#34;&gt;plpython3u&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-lang pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/lang/&#34; title=&#34;LANG — Procedural Languages&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;LANG&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;----d-r&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Requires&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore&#34; title=&#34;Extension: hstore&#34;&gt;hstore&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpython3u&#34; title=&#34;Extension: plpython3u&#34;&gt;plpython3u&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_pllua&#34; title=&#34;Extension: hstore_pllua&#34;&gt;hstore_pllua&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plperl&#34; title=&#34;Extension: hstore_plperl&#34;&gt;hstore_plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plperlu&#34; title=&#34;Extension: hstore_plperlu&#34;&gt;hstore_plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore&#34; title=&#34;Extension: hstore&#34;&gt;hstore&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Siblings&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plpython3u&#34; title=&#34;Extension: plpython3u&#34;&gt;plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonb_plpython3u&#34; title=&#34;Extension: jsonb_plpython3u&#34;&gt;jsonb_plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ltree_plpython3u&#34; title=&#34;Extension: ltree_plpython3u&#34;&gt;ltree_plpython3u&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-e8464982-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-e8464982-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-e8464982-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore_plpython3u&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;CASCADE&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- requires hstore, plpython3u&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/hstore.html&#34;&gt;hstore_plpython3u: Transform between hstore and PL/Python3&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides a transform for the &lt;code&gt;hstore&lt;/code&gt; type for PL/Python3U. When loaded, &lt;code&gt;hstore&lt;/code&gt; values are automatically converted to Python dicts and vice versa.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-e8464982-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;15&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-e8464982-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-e8464982-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore_plpython3u&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore_to_pairs&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpython3u&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRANSFORM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;#&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;is&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;now&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Python&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dict&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;, &amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;join&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;{k}={v}&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;for&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;k&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;v&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;in&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sorted&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;val&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;items&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()))&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;make_hstore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;key&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LANGUAGE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;plpython3u&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRANSFORM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TYPE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;$$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore_to_pairs&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;a=&amp;gt;1, b=&amp;gt;2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;make_hstore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;color&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;blue&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>isn</title>
      <link>https://ext.pgsty.com/e/isn/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/isn/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/isn.html&#34;&gt;&lt;strong&gt;isn&lt;/strong&gt;&lt;/a&gt; : data types for international product numbering standards&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3930&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/isn.html&#34;&gt;isn&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/isn&#34; title=&#34;Extension: isn&#34;&gt;isn&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.2&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-type pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/type/&#34; title=&#34;TYPE — Data Types&#34;&gt;&lt;i class=&#34;fa-solid fa-cube&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;TYPE&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/country&#34; title=&#34;Extension: country&#34;&gt;country&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_xenophile&#34; title=&#34;Extension: pg_xenophile&#34;&gt;pg_xenophile&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/icu_ext&#34; title=&#34;Extension: icu_ext&#34;&gt;icu_ext&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/currency&#34; title=&#34;Extension: currency&#34;&gt;currency&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/asn1oid&#34; title=&#34;Extension: asn1oid&#34;&gt;asn1oid&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/uri&#34; title=&#34;Extension: uri&#34;&gt;uri&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/gb18030_2022&#34; title=&#34;Extension: gb18030_2022&#34;&gt;gb18030_2022&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_cjk_parser&#34; title=&#34;Extension: pg_cjk_parser&#34;&gt;pg_cjk_parser&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-1c77d98d-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-1c77d98d-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-1c77d98d-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;isn&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/isn.html&#34;&gt;isn: ISBN, ISSN, EAN, UPC product number types&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;isn&lt;/code&gt; extension provides data types for international product numbering standards with validation and check-digit verification.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-1c77d98d-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-1c77d98d-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-1c77d98d-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;isn&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;data-types&#34;&gt;Data Types&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#data-types&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Type&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;EAN13&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;European Article Numbers (always 13-digit)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;ISBN13&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;International Standard Book Numbers (13-digit)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;ISMN13&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;International Standard Music Numbers (13-digit)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;ISSN13&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;International Standard Serial Numbers (13-digit)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;ISBN&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Book numbers (10-digit short format when possible)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;ISMN&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Music numbers (10-digit short format when possible)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;ISSN&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Serial numbers (10-digit short format when possible)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;UPC&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Universal Product Codes&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;examples&#34;&gt;Examples&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#examples&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-1c77d98d-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;13&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-1c77d98d-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-1c77d98d-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;isbn&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;978-0-393-04002-9&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;isbn13&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;0901690546&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;issn&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;1436-4522&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Create table with ISBN column
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TABLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;books&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;isbn&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INTO&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;books&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;VALUES&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;9780393040029&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Auto-calculate check digit with ?
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INTO&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;books&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;VALUES&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;220500896?&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Type casting
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ean13&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;0901690546&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;isbn&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;weak-mode&#34;&gt;Weak Mode&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#weak-mode&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Enable weak mode to accept invalid check digits (useful for OCR/data cleanup):&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-1c77d98d-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;9&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-1c77d98d-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-1c77d98d-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SET&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;isn&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;weak&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TO&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INTO&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;books&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;VALUES&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;978-0-11-000533-4&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SET&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;isn&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;weak&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TO&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;false&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Find invalid entries
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;books&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;NOT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;is_valid&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Fix invalid entries
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;UPDATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;books&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;SET&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;make_valid&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;2-205-00876-X!&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;functions&#34;&gt;Functions&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#functions&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Function&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;is_valid(isn)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Check if value has valid check digit&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;make_valid(isn)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Clear the invalid-check-digit flag&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;isn_weak()&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Return current weak mode status&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;isn_weak(boolean)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Set weak mode&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;operators-and-indexing&#34;&gt;Operators and Indexing&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#operators-and-indexing&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Standard comparison operators (&lt;code&gt;=&lt;/code&gt;, &lt;code&gt;&amp;lt;&lt;/code&gt;, &lt;code&gt;&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;lt;=&lt;/code&gt;, &lt;code&gt;&amp;gt;=&lt;/code&gt;, &lt;code&gt;&amp;lt;&amp;gt;&lt;/code&gt;) with B-tree and hash index support.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>seg</title>
      <link>https://ext.pgsty.com/e/seg/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/seg/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/seg.html&#34;&gt;&lt;strong&gt;seg&lt;/strong&gt;&lt;/a&gt; : data type for representing line segments or floating-point intervals&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3940&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/seg.html&#34;&gt;seg&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/seg&#34; title=&#34;Extension: seg&#34;&gt;seg&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.4&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-type pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/type/&#34; title=&#34;TYPE — Data Types&#34;&gt;&lt;i class=&#34;fa-solid fa-cube&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;TYPE&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/cube&#34; title=&#34;Extension: cube&#34;&gt;cube&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/prefix&#34; title=&#34;Extension: prefix&#34;&gt;prefix&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/unit&#34; title=&#34;Extension: unit&#34;&gt;unit&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ip4r&#34; title=&#34;Extension: ip4r&#34;&gt;ip4r&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgmp&#34; title=&#34;Extension: pgmp&#34;&gt;pgmp&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/numeral&#34; title=&#34;Extension: numeral&#34;&gt;numeral&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_rational&#34; title=&#34;Extension: pg_rational&#34;&gt;pg_rational&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/uint&#34; title=&#34;Extension: uint&#34;&gt;uint&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/uint128&#34; title=&#34;Extension: uint128&#34;&gt;uint128&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ltree&#34; title=&#34;Extension: ltree&#34;&gt;ltree&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.4&#34;&gt;1.4&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.4&#34;&gt;1.4&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.4&#34;&gt;1.4&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.4&#34;&gt;1.4&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.4&#34;&gt;1.4&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-9bcf0cbe-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-9bcf0cbe-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-9bcf0cbe-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;seg&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/seg.html&#34;&gt;seg: line segment / floating-point interval data type&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;seg&lt;/code&gt; extension provides a data type for representing line segments or floating-point intervals, useful for representing measurements with uncertainty.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-9bcf0cbe-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-9bcf0cbe-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-9bcf0cbe-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;seg&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;input-formats&#34;&gt;Input Formats&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#input-formats&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-9bcf0cbe-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;5&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-9bcf0cbe-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-9bcf0cbe-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;5.0&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;seg&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;           &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- zero-length interval (point)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;5.0 .. 7.0&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;seg&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- interval from 5.0 to 7.0
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;5(+-)0.3&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;seg&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- interval 4.7 .. 5.3
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;50 ..&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;seg&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- open interval &amp;gt;= 50
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;.. 0&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;seg&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;           &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- open interval &amp;lt;= 0&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;Certainty indicators (&lt;code&gt;&amp;lt;&lt;/code&gt;, &lt;code&gt;&amp;gt;&lt;/code&gt;, &lt;code&gt;~&lt;/code&gt;) can be prepended but are treated as comments and ignored by operators.&lt;/p&gt;
&lt;h3 id=&#34;operators&#34;&gt;Operators&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#operators&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Spatial operators (GiST-indexed):&lt;/strong&gt;&lt;/p&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Operator&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;&amp;lt;&amp;lt;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Entirely left of&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;&amp;gt;&amp;gt;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Entirely right of&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;&amp;amp;&amp;lt;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Does not extend right of&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;&amp;amp;&amp;gt;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Does not extend left of&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;=&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Equal&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;&amp;amp;&amp;amp;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Overlaps&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;@&amp;gt;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Contains&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;&amp;lt;@&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Contained in&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Comparison operators&lt;/strong&gt; (&lt;code&gt;&amp;lt;&lt;/code&gt;, &lt;code&gt;&amp;lt;=&lt;/code&gt;, &lt;code&gt;&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;gt;=&lt;/code&gt;) are available for sorting.&lt;/p&gt;
&lt;h3 id=&#34;index-support&#34;&gt;Index Support&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#index-support&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-9bcf0cbe-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-9bcf0cbe-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-9bcf0cbe-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;idx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;measurements&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gist&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;reading&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;precision&#34;&gt;Precision&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#precision&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Values are stored as 32-bit floating-point pairs, retaining up to 7 significant digits. Trailing zeroes are preserved.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>cube</title>
      <link>https://ext.pgsty.com/e/cube/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/cube/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/cube.html&#34;&gt;&lt;strong&gt;cube&lt;/strong&gt;&lt;/a&gt; : data type for multidimensional cubes&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3950&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/cube.html&#34;&gt;cube&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/cube&#34; title=&#34;Extension: cube&#34;&gt;cube&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.5&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-type pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/type/&#34; title=&#34;TYPE — Data Types&#34;&gt;&lt;i class=&#34;fa-solid fa-cube&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;TYPE&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Need By&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/earthdistance&#34; title=&#34;Extension: earthdistance&#34;&gt;earthdistance&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg4ml&#34; title=&#34;Extension: pg4ml&#34;&gt;pg4ml&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/seg&#34; title=&#34;Extension: seg&#34;&gt;seg&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/prefix&#34; title=&#34;Extension: prefix&#34;&gt;prefix&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/unit&#34; title=&#34;Extension: unit&#34;&gt;unit&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ip4r&#34; title=&#34;Extension: ip4r&#34;&gt;ip4r&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgmp&#34; title=&#34;Extension: pgmp&#34;&gt;pgmp&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/numeral&#34; title=&#34;Extension: numeral&#34;&gt;numeral&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_rational&#34; title=&#34;Extension: pg_rational&#34;&gt;pg_rational&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/uint&#34; title=&#34;Extension: uint&#34;&gt;uint&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/uint128&#34; title=&#34;Extension: uint128&#34;&gt;uint128&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ltree&#34; title=&#34;Extension: ltree&#34;&gt;ltree&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.5&#34;&gt;1.5&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.5&#34;&gt;1.5&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.5&#34;&gt;1.5&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.5&#34;&gt;1.5&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.5&#34;&gt;1.5&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-549ad922-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-549ad922-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-549ad922-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/cube.html&#34;&gt;cube: multi-dimensional cube data type&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;cube&lt;/code&gt; extension provides a data type for representing multi-dimensional cubes (up to 100 dimensions).&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-549ad922-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-549ad922-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-549ad922-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;input-formats&#34;&gt;Input Formats&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#input-formats&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-549ad922-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;4&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-549ad922-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-549ad922-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;(1,2),(3,4)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;         &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- 2D cube
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;(1,2,3)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;              &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- 3D point (zero-volume)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;               &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- 1D cube from 1 to 2
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;ARRAY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;],&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;ARRAY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;3&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;4&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- 2D cube from arrays&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;operators&#34;&gt;Operators&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#operators&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Operator&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;&amp;amp;&amp;amp;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Overlaps&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;@&amp;gt;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Contains&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;&amp;lt;@&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Contained in&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;-&amp;gt;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Extract n-th coordinate&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;&amp;lt;-&amp;gt;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Euclidean distance&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;&amp;lt;#&amp;gt;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Taxicab (L-1) distance&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;&amp;lt;=&amp;gt;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Chebyshev (L-inf) distance&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;functions&#34;&gt;Functions&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#functions&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-549ad922-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;9&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-549ad922-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-549ad922-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;cube_dim&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;(1,2),(3,4)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;                  &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- 2
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;cube_ll_coord&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;(1,2),(3,4)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- 1
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;cube_ur_coord&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;(1,2),(3,4)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- 3
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;cube_is_point&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;));&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;                        &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- true
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;cube_distance&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;(1,2)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;(3,4)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- 2.828...
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;cube_union&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;(1,2)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;(3,4)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;       &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- (1,2),(3,4)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;cube_inter&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;(0,0),(2,2)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;(1,1),(3,3)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;cube_subset&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;(1,3,5),(6,7,8)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;ARRAY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- (3),(7)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;cube_enlarge&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;(1,2),(3,4)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- expand by radius&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;gist-index-with-knn-search&#34;&gt;GiST Index with KNN Search&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#gist-index-with-knn-search&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-549ad922-fence-4&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;6&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-549ad922-fence-4&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-549ad922-fence-4-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;idx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;points&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gist&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;location&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Find nearest point to (0.5, 0.5, 0.5)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;points&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;ORDER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;BY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;location&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;lt;-&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;cube&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;ARRAY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;])&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LIMIT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;dimension-handling&#34;&gt;Dimension Handling&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#dimension-handling&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;When operating on cubes of different dimensions, the lower-dimensional cube is treated as having zeroes for missing coordinates.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>ltree</title>
      <link>https://ext.pgsty.com/e/ltree/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/ltree/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/ltree.html&#34;&gt;&lt;strong&gt;ltree&lt;/strong&gt;&lt;/a&gt; : data type for hierarchical tree-like structures&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3960&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/ltree.html&#34;&gt;ltree&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ltree&#34; title=&#34;Extension: ltree&#34;&gt;ltree&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.3&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-type pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/type/&#34; title=&#34;TYPE — Data Types&#34;&gt;&lt;i class=&#34;fa-solid fa-cube&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;TYPE&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Need By&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/fsm_core&#34; title=&#34;Extension: fsm_core&#34;&gt;fsm_core&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ltree_plpython3u&#34; title=&#34;Extension: ltree_plpython3u&#34;&gt;ltree_plpython3u&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/age&#34; title=&#34;Extension: age&#34;&gt;age&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_liquid&#34; title=&#34;Extension: pg_liquid&#34;&gt;pg_liquid&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/onesparse&#34; title=&#34;Extension: onesparse&#34;&gt;onesparse&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/graph&#34; title=&#34;Extension: graph&#34;&gt;graph&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgrdf&#34; title=&#34;Extension: pgrdf&#34;&gt;pgrdf&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ltree_plpython3u&#34; title=&#34;Extension: ltree_plpython3u&#34;&gt;ltree_plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/prefix&#34; title=&#34;Extension: prefix&#34;&gt;prefix&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ip4r&#34; title=&#34;Extension: ip4r&#34;&gt;ip4r&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/seg&#34; title=&#34;Extension: seg&#34;&gt;seg&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/cube&#34; title=&#34;Extension: cube&#34;&gt;cube&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.3&#34;&gt;1.3&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.3&#34;&gt;1.3&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.3&#34;&gt;1.3&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.3&#34;&gt;1.3&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.3&#34;&gt;1.3&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-9f1ec04e-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-9f1ec04e-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-9f1ec04e-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ltree&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/ltree.html&#34;&gt;ltree: hierarchical tree-like label data type&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;ltree&lt;/code&gt; extension provides data types for hierarchical tree-structured data with extensive search facilities.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-9f1ec04e-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-9f1ec04e-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-9f1ec04e-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ltree&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;data-types&#34;&gt;Data Types&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#data-types&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;ltree&lt;/code&gt;&lt;/strong&gt;: Label path (e.g., &lt;code&gt;Top.Science.Astronomy&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;lquery&lt;/code&gt;&lt;/strong&gt;: Regex-like pattern for matching ltree values&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;ltxtquery&lt;/code&gt;&lt;/strong&gt;: Full-text-search-like pattern&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;basic-usage&#34;&gt;Basic Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#basic-usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-9f1ec04e-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;13&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-9f1ec04e-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-9f1ec04e-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TABLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;categories&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;path&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ltree&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INTO&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;categories&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;VALUES&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Top&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Top.Science&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Top.Science.Astronomy&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Top.Hobbies&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Top.Collections.Pictures&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Find descendants
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;path&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;categories&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;path&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;lt;@&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Top.Science&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Pattern matching
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;path&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;categories&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;path&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;~&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;*.Astronomy.*&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Full-text search
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;path&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;categories&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;path&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Science &amp;amp; !Pictures&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;operators&#34;&gt;Operators&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#operators&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Operator&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;@&amp;gt;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Is ancestor of (or equal)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;&amp;lt;@&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Is descendant of (or equal)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;~&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Matches lquery pattern&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;?&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Matches any lquery in array&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;@&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Matches ltxtquery&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;||&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Concatenate paths&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;lquery-patterns&#34;&gt;lquery Patterns&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#lquery-patterns&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-9f1ec04e-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;4&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-9f1ec04e-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-9f1ec04e-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;*.Science.*&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;           &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- any path containing Science
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Top.*{1,2}.Astronomy&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- 1-2 labels between Top and Astronomy
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;*.astro*&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;              &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- prefix matching
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;*.Astro*@&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;             &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- case-insensitive prefix&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;functions&#34;&gt;Functions&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#functions&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-9f1ec04e-fence-4&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;6&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-9f1ec04e-fence-4&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-9f1ec04e-fence-4-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;nlevel&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Top.Science.Astronomy&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;                     &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- 3
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;subltree&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Top.Science.Astronomy&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;            &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- Science
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;subpath&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Top.Science.Astronomy&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;                 &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- Science.Astronomy
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;index&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;a.b.c.d&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;b.c&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;                             &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- 1
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lca&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;1.2.3&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;1.2.3.4.5&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;                          &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- 1.2
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lca&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;ARRAY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;1.2.3&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ltree&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;1.2.4&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ltree&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- 1.2&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;index-support&#34;&gt;Index Support&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#index-support&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-9f1ec04e-fence-5&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;5&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-9f1ec04e-fence-5&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-9f1ec04e-fence-5-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- GiST index (supports @&amp;gt;, &amp;lt;@, ~, ?, @)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;path_gist_idx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;categories&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gist&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;path&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- B-tree index (supports &amp;lt;, &amp;lt;=, =, &amp;gt;=, &amp;gt;)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;path_idx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;categories&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;btree&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;path&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>hstore</title>
      <link>https://ext.pgsty.com/e/hstore/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/hstore/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/hstore.html&#34;&gt;&lt;strong&gt;hstore&lt;/strong&gt;&lt;/a&gt; : data type for storing sets of (key, value) pairs&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3970&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/hstore.html&#34;&gt;hstore&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore&#34; title=&#34;Extension: hstore&#34;&gt;hstore&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.8&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-type pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/type/&#34; title=&#34;TYPE — Data Types&#34;&gt;&lt;i class=&#34;fa-solid fa-cube&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;TYPE&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Need By&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/flux&#34; title=&#34;Extension: flux&#34;&gt;flux&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/format&#34; title=&#34;Extension: format&#34;&gt;format&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_hash_ops&#34; title=&#34;Extension: hstore_hash_ops&#34;&gt;hstore_hash_ops&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_ops&#34; title=&#34;Extension: hstore_ops&#34;&gt;hstore_ops&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_pllua&#34; title=&#34;Extension: hstore_pllua&#34;&gt;hstore_pllua&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plluau&#34; title=&#34;Extension: hstore_plluau&#34;&gt;hstore_plluau&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plperl&#34; title=&#34;Extension: hstore_plperl&#34;&gt;hstore_plperl&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plperlu&#34; title=&#34;Extension: hstore_plperlu&#34;&gt;hstore_plperlu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plpython2u&#34; title=&#34;Extension: hstore_plpython2u&#34;&gt;hstore_plpython2u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plpython3u&#34; title=&#34;Extension: hstore_plpython3u&#34;&gt;hstore_plpython3u&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plpythonu&#34; title=&#34;Extension: hstore_plpythonu&#34;&gt;hstore_plpythonu&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore_plruby&#34; title=&#34;Extension: hstore_plruby&#34;&gt;hstore_plruby&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/json_enhancements_with_hstore&#34; title=&#34;Extension: json_enhancements_with_hstore&#34;&gt;json_enhancements_with_hstore&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/mbus&#34; title=&#34;Extension: mbus&#34;&gt;mbus&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/meta_triggers&#34; title=&#34;Extension: meta_triggers&#34;&gt;meta_triggers&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/numhstore&#34; title=&#34;Extension: numhstore&#34;&gt;numhstore&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_auditor&#34; title=&#34;Extension: pg_auditor&#34;&gt;pg_auditor&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_readme&#34; title=&#34;Extension: pg_readme&#34;&gt;pg_readme&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_rowalesce&#34; title=&#34;Extension: pg_rowalesce&#34;&gt;pg_rowalesce&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_utility_trigger_functions&#34; title=&#34;Extension: pg_utility_trigger_functions&#34;&gt;pg_utility_trigger_functions&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_xenophile&#34; title=&#34;Extension: pg_xenophile&#34;&gt;pg_xenophile&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/sys_syn_dblink&#34; title=&#34;Extension: sys_syn_dblink&#34;&gt;sys_syn_dblink&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgbson&#34; title=&#34;Extension: pgbson&#34;&gt;pgbson&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/collection&#34; title=&#34;Extension: collection&#34;&gt;collection&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsonschema&#34; title=&#34;Extension: jsonschema&#34;&gt;jsonschema&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgjq&#34; title=&#34;Extension: pgjq&#34;&gt;pgjq&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/jsquery&#34; title=&#34;Extension: jsquery&#34;&gt;jsquery&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_jsonschema&#34; title=&#34;Extension: pg_jsonschema&#34;&gt;pg_jsonschema&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/intarray&#34; title=&#34;Extension: intarray&#34;&gt;intarray&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/arraymath&#34; title=&#34;Extension: arraymath&#34;&gt;arraymath&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgpdf&#34; title=&#34;Extension: pgpdf&#34;&gt;pgpdf&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pglite_fusion&#34; title=&#34;Extension: pglite_fusion&#34;&gt;pglite_fusion&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.8&#34;&gt;1.8&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.8&#34;&gt;1.8&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.8&#34;&gt;1.8&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.8&#34;&gt;1.8&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.8&#34;&gt;1.8&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-4a896594-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-4a896594-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-4a896594-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/hstore.html&#34;&gt;hstore: key-value pair data type&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;hstore&lt;/code&gt; extension provides a key/value pair data type for storing semi-structured data in a single column.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-4a896594-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-4a896594-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-4a896594-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;basic-usage&#34;&gt;Basic Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#basic-usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-4a896594-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;4&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-4a896594-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-4a896594-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;name =&amp;gt; Alice, age =&amp;gt; 30&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;name =&amp;gt; Alice&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;name&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;           &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- Alice
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;a =&amp;gt; 1, b =&amp;gt; 2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;?&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;a&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;              &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- true
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;a =&amp;gt; 1&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;||&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;b =&amp;gt; 2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- &amp;#34;a&amp;#34;=&amp;gt;&amp;#34;1&amp;#34;, &amp;#34;b&amp;#34;=&amp;gt;&amp;#34;2&amp;#34;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;operators&#34;&gt;Operators&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#operators&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Operator&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Example&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;-&amp;gt;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Get value by key&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;h -&amp;gt; &#39;key&#39;&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;||&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Concatenate&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;h1 || h2&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;?&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Contains key&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;h ? &#39;key&#39;&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;?&amp;amp;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Contains all keys&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;h ?&amp;amp; ARRAY[&#39;a&#39;,&#39;b&#39;]&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;?|&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Contains any key&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;h ?| ARRAY[&#39;a&#39;,&#39;b&#39;]&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;@&amp;gt;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Contains&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;h @&amp;gt; &#39;a=&amp;gt;1&#39;&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;&amp;lt;@&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Contained by&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;h &amp;lt;@ &#39;a=&amp;gt;1, b=&amp;gt;2&#39;&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;-&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Delete key(s)&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;h - &#39;key&#39;&lt;/code&gt; or &lt;code&gt;h - ARRAY[&#39;a&#39;,&#39;b&#39;]&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;subscript-access&#34;&gt;Subscript Access&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#subscript-access&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-4a896594-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;2&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-4a896594-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-4a896594-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;name&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;mytable&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;UPDATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;mytable&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;SET&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;age&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;31&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;functions&#34;&gt;Functions&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#functions&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-4a896594-fence-4&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;27&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-4a896594-fence-4&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-4a896594-fence-4-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Construction
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;key&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;value&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;ARRAY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;a&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;b&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;],&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;ARRAY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;1&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ROW&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;hello&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;));&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Extraction
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;akeys&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;                    &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- text[] of keys
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;avals&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;                    &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- text[] of values
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;skeys&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;                    &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- set of keys
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;svals&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;                    &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- set of values
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;each&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;                     &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- set of (key, value) records
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Query
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;exist&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;key&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;             &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- boolean
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;defined&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;key&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;           &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- true if non-NULL value
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Modification
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;delete&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;key&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;slice&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;ARRAY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;a&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;b&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- subset of keys
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- JSON conversion
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore_to_json&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore_to_jsonb&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hstore_to_json_loose&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- distinguishes numbers/booleans
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Record conversion
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;populate_record&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;NULL&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my_table&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;index-support&#34;&gt;Index Support&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#index-support&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-4a896594-fence-5&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;4&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-4a896594-fence-5&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-4a896594-fence-5-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;idx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gin&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- supports @&amp;gt;, ?, ?&amp;amp;, ?|
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;idx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gist&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- supports @&amp;gt;, ?, ?&amp;amp;, ?|
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;idx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;btree&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- supports =
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;idx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hash&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- supports =&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>citext</title>
      <link>https://ext.pgsty.com/e/citext/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/citext/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/citext.html&#34;&gt;&lt;strong&gt;citext&lt;/strong&gt;&lt;/a&gt; : data type for case-insensitive character strings&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3980&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/citext.html&#34;&gt;citext&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/citext&#34; title=&#34;Extension: citext&#34;&gt;citext&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.6&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-type pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/type/&#34; title=&#34;TYPE — Data Types&#34;&gt;&lt;i class=&#34;fa-solid fa-cube&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;TYPE&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/unaccent&#34; title=&#34;Extension: unaccent&#34;&gt;unaccent&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/icu_ext&#34; title=&#34;Extension: icu_ext&#34;&gt;icu_ext&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_trgm&#34; title=&#34;Extension: pg_trgm&#34;&gt;pg_trgm&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_xenophile&#34; title=&#34;Extension: pg_xenophile&#34;&gt;pg_xenophile&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/gb18030_2022&#34; title=&#34;Extension: gb18030_2022&#34;&gt;gb18030_2022&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_cjk_parser&#34; title=&#34;Extension: pg_cjk_parser&#34;&gt;pg_cjk_parser&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/dict_xsyn&#34; title=&#34;Extension: dict_xsyn&#34;&gt;dict_xsyn&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgroonga&#34; title=&#34;Extension: pgroonga&#34;&gt;pgroonga&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_tokenizer&#34; title=&#34;Extension: pg_tokenizer&#34;&gt;pg_tokenizer&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgpcre&#34; title=&#34;Extension: pgpcre&#34;&gt;pgpcre&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.6&#34;&gt;1.6&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.6&#34;&gt;1.6&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.6&#34;&gt;1.6&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.6&#34;&gt;1.6&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.6&#34;&gt;1.6&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-e95915e7-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-e95915e7-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-e95915e7-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;citext&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/citext.html&#34;&gt;citext: case-insensitive character string type&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;citext&lt;/code&gt; extension provides a case-insensitive text type that eliminates the need for &lt;code&gt;lower()&lt;/code&gt; calls in queries.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-e95915e7-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-e95915e7-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-e95915e7-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;citext&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;basic-usage&#34;&gt;Basic Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#basic-usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-e95915e7-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;10&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-e95915e7-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-e95915e7-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TABLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;users&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;nick&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;citext&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;PRIMARY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;KEY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pass&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;NOT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;NULL&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INTO&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;users&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;VALUES&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Larry&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;secret123&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Case-insensitive matching
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;users&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;nick&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;larry&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- matches &amp;#39;Larry&amp;#39;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;users&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;nick&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;LARRY&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- matches &amp;#39;Larry&amp;#39;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;behavior&#34;&gt;Behavior&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#behavior&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;citext&lt;/code&gt; performs comparisons by internally converting strings to lowercase. The following operations are case-insensitive with &lt;code&gt;citext&lt;/code&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Comparison operators: &lt;code&gt;=&lt;/code&gt;, &lt;code&gt;&amp;lt;&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;lt;&lt;/code&gt;, &lt;code&gt;&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;lt;=&lt;/code&gt;, &lt;code&gt;&amp;gt;=&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Pattern matching: &lt;code&gt;LIKE&lt;/code&gt;, &lt;code&gt;ILIKE&lt;/code&gt;, &lt;code&gt;~~&lt;/code&gt;, &lt;code&gt;~~*&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Regular expressions: &lt;code&gt;~&lt;/code&gt;, &lt;code&gt;~*&lt;/code&gt;, &lt;code&gt;!~&lt;/code&gt;, &lt;code&gt;!~*&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;case-insensitive-functions&#34;&gt;Case-Insensitive Functions&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#case-insensitive-functions&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;When arguments are &lt;code&gt;citext&lt;/code&gt;, these functions perform case-insensitive matching:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;regexp_match()&lt;/code&gt;, &lt;code&gt;regexp_matches()&lt;/code&gt;, &lt;code&gt;regexp_replace()&lt;/code&gt;, &lt;code&gt;regexp_split_to_array()&lt;/code&gt;, &lt;code&gt;regexp_split_to_table()&lt;/code&gt;, &lt;code&gt;replace()&lt;/code&gt;, &lt;code&gt;split_part()&lt;/code&gt;, &lt;code&gt;strpos()&lt;/code&gt;, &lt;code&gt;translate()&lt;/code&gt;&lt;/p&gt;
&lt;h3 id=&#34;advantages-over-lower&#34;&gt;Advantages Over lower()&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#advantages-over-lower&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Eliminates verbose &lt;code&gt;lower()&lt;/code&gt; calls in WHERE clauses&lt;/li&gt;
&lt;li&gt;Supports case-insensitive PRIMARY KEY and UNIQUE constraints&lt;/li&gt;
&lt;li&gt;No need for functional indexes&lt;/li&gt;
&lt;li&gt;Transparent case-folding in all operations&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;limitations&#34;&gt;Limitations&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#limitations&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Case-folding depends on &lt;code&gt;LC_CTYPE&lt;/code&gt; at database creation&lt;/li&gt;
&lt;li&gt;Slightly less efficient than &lt;code&gt;text&lt;/code&gt; (copying and conversion overhead)&lt;/li&gt;
&lt;li&gt;Does not support B-tree deduplication&lt;/li&gt;
&lt;li&gt;For better Unicode handling, consider nondeterministic collations instead&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>xml2</title>
      <link>https://ext.pgsty.com/e/xml2/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/xml2/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/xml2.html&#34;&gt;&lt;strong&gt;xml2&lt;/strong&gt;&lt;/a&gt; : XPath querying and XSLT&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3990&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/xml2.html&#34;&gt;xml2&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/xml2&#34; title=&#34;Extension: xml2&#34;&gt;xml2&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.1&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-type pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/type/&#34; title=&#34;TYPE — Data Types&#34;&gt;&lt;i class=&#34;fa-solid fa-cube&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;TYPE&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;----d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/plxslt&#34; title=&#34;Extension: plxslt&#34;&gt;plxslt&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/omni_xml&#34; title=&#34;Extension: omni_xml&#34;&gt;omni_xml&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgrdf&#34; title=&#34;Extension: pgrdf&#34;&gt;pgrdf&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/sparql&#34; title=&#34;Extension: sparql&#34;&gt;sparql&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/rdf_fdw&#34; title=&#34;Extension: rdf_fdw&#34;&gt;rdf_fdw&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgpdf&#34; title=&#34;Extension: pgpdf&#34;&gt;pgpdf&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgbson&#34; title=&#34;Extension: pgbson&#34;&gt;pgbson&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore&#34; title=&#34;Extension: hstore&#34;&gt;hstore&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pglite_fusion&#34; title=&#34;Extension: pglite_fusion&#34;&gt;pglite_fusion&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-14874a5b-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-14874a5b-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-14874a5b-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xml2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/xml2.html&#34;&gt;xml2: XPath querying and XSLT functionality&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;xml2&lt;/code&gt; extension provides XPath querying and XSLT transformation functions for XML documents. Note: this module is deprecated in favor of the core SQL/XML functionality.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-14874a5b-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-14874a5b-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-14874a5b-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xml2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;xml-validation&#34;&gt;XML Validation&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#xml-validation&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-14874a5b-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-14874a5b-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-14874a5b-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xml_valid&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&amp;lt;doc&amp;gt;&amp;lt;item&amp;gt;test&amp;lt;/item&amp;gt;&amp;lt;/doc&amp;gt;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- true&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;xpath-query-functions&#34;&gt;XPath Query Functions&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#xpath-query-functions&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-14874a5b-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;14&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-14874a5b-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-14874a5b-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Extract text value
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xpath_string&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&amp;lt;doc&amp;gt;&amp;lt;name&amp;gt;Alice&amp;lt;/name&amp;gt;&amp;lt;/doc&amp;gt;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/doc/name&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Extract numeric value
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xpath_number&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&amp;lt;doc&amp;gt;&amp;lt;count&amp;gt;42&amp;lt;/count&amp;gt;&amp;lt;/doc&amp;gt;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/doc/count&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Extract boolean
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xpath_bool&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&amp;lt;doc&amp;gt;&amp;lt;active&amp;gt;true&amp;lt;/active&amp;gt;&amp;lt;/doc&amp;gt;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/doc/active&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Extract node set with tags
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xpath_nodeset&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&amp;lt;doc&amp;gt;&amp;lt;a&amp;gt;1&amp;lt;/a&amp;gt;&amp;lt;a&amp;gt;2&amp;lt;/a&amp;gt;&amp;lt;/doc&amp;gt;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/doc/a&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;results&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;item&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Extract values as comma-separated list
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xpath_list&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&amp;lt;doc&amp;gt;&amp;lt;a&amp;gt;1&amp;lt;/a&amp;gt;&amp;lt;a&amp;gt;2&amp;lt;/a&amp;gt;&amp;lt;/doc&amp;gt;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/doc/a&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- 1,2&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;xpath_table-function&#34;&gt;xpath_table Function&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#xpath_table-function&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Evaluate multiple XPath queries across a set of documents:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-14874a5b-fence-4&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;5&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-14874a5b-fence-4&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-14874a5b-fence-4-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xpath_table&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;id&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;xml_col&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;documents&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;              &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/doc/author|/doc/title&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;              &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;true&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;author&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;title&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;Parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Key field name (first output column)&lt;/li&gt;
&lt;li&gt;XML document field name&lt;/li&gt;
&lt;li&gt;Table/view name&lt;/li&gt;
&lt;li&gt;XPath expressions separated by &lt;code&gt;|&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;WHERE clause (use &lt;code&gt;&#39;true&#39;&lt;/code&gt; for all rows)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;xslt-transformation&#34;&gt;XSLT Transformation&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#xslt-transformation&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-14874a5b-fence-5&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;5&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-14874a5b-fence-5&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-14874a5b-fence-5-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Apply XSL stylesheet to document
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xslt_process&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xml_document&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xsl_stylesheet&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- With parameters
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xslt_process&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xml_document&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xsl_stylesheet&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;param1=value1,param2=value2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>refint</title>
      <link>https://ext.pgsty.com/e/refint/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/refint/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/contrib-spi.html#CONTRIB-SPI-REFINT&#34;&gt;&lt;strong&gt;refint&lt;/strong&gt;&lt;/a&gt; : functions for implementing referential integrity (obsolete)&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;4880&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/contrib-spi.html#CONTRIB-SPI-REFINT&#34;&gt;refint&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/refint&#34; title=&#34;Extension: refint&#34;&gt;refint&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-func pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/func/&#34; title=&#34;FUNC — Functions&#34;&gt;&lt;i class=&#34;fa-solid fa-superscript&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;FUNC&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/tcn&#34; title=&#34;Extension: tcn&#34;&gt;tcn&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/autoinc&#34; title=&#34;Extension: autoinc&#34;&gt;autoinc&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/insert_username&#34; title=&#34;Extension: insert_username&#34;&gt;insert_username&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/moddatetime&#34; title=&#34;Extension: moddatetime&#34;&gt;moddatetime&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/table_log&#34; title=&#34;Extension: table_log&#34;&gt;table_log&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-2bb21ff6-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-2bb21ff6-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-2bb21ff6-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;refint&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/contrib-spi.html&#34;&gt;refint: referential integrity trigger functions&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides trigger functions for implementing referential integrity checks (largely superseded by built-in foreign key constraints).&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-2bb21ff6-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-2bb21ff6-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-2bb21ff6-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;refint&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;trigger-functions&#34;&gt;Trigger Functions&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#trigger-functions&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Function&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;check_primary_key()&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Check referencing table &amp;ndash; ensures referenced row exists&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;check_foreign_key()&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Check referenced table &amp;ndash; handles cascading actions on delete/update&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;check_primary_key&#34;&gt;check_primary_key&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#check_primary_key&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Trigger on the referencing table (&lt;code&gt;AFTER INSERT OR UPDATE&lt;/code&gt;). Parameters: referencing column name(s), referenced table name, referenced column name(s).&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-2bb21ff6-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;4&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-2bb21ff6-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-2bb21ff6-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRIGGER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;check_fk&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AFTER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;OR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;UPDATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;orders&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EACH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ROW&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EXECUTE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;check_primary_key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;customer_id&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;customers&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;id&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;check_foreign_key&#34;&gt;check_foreign_key&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#check_foreign_key&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Trigger on the referenced table (&lt;code&gt;AFTER DELETE OR UPDATE&lt;/code&gt;). Parameters: number of referencing tables, action (&lt;code&gt;cascade&lt;/code&gt;, &lt;code&gt;restrict&lt;/code&gt;, or &lt;code&gt;setnull&lt;/code&gt;), primary key column(s), then referencing table and column pairs.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-2bb21ff6-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;4&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-2bb21ff6-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-2bb21ff6-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRIGGER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;check_ref&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AFTER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DELETE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;OR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;UPDATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;customers&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EACH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ROW&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EXECUTE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;check_foreign_key&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;cascade&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;id&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;orders&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;customer_id&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>autoinc</title>
      <link>https://ext.pgsty.com/e/autoinc/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/autoinc/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/contrib-spi.html#CONTRIB-SPI-AUTOINC&#34;&gt;&lt;strong&gt;autoinc&lt;/strong&gt;&lt;/a&gt; : functions for autoincrementing fields&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;4881&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/contrib-spi.html#CONTRIB-SPI-AUTOINC&#34;&gt;autoinc&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/autoinc&#34; title=&#34;Extension: autoinc&#34;&gt;autoinc&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-func pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/func/&#34; title=&#34;FUNC — Functions&#34;&gt;&lt;i class=&#34;fa-solid fa-superscript&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;FUNC&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/tcn&#34; title=&#34;Extension: tcn&#34;&gt;tcn&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/refint&#34; title=&#34;Extension: refint&#34;&gt;refint&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/insert_username&#34; title=&#34;Extension: insert_username&#34;&gt;insert_username&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/moddatetime&#34; title=&#34;Extension: moddatetime&#34;&gt;moddatetime&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/table_log&#34; title=&#34;Extension: table_log&#34;&gt;table_log&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-d27f581b-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-d27f581b-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-d27f581b-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;autoinc&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/contrib-spi.html&#34;&gt;autoinc: auto-increment trigger function&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides a trigger function that auto-increments specified columns using sequences.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-d27f581b-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-d27f581b-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-d27f581b-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;autoinc&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;trigger-function&#34;&gt;Trigger Function&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#trigger-function&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Function&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;autoinc()&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Auto-increment columns from sequences on insert (and optionally update)&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;p&gt;Parameters are pairs of (column name, sequence name). The value is replaced only if initially zero or NULL.&lt;/p&gt;
&lt;h3 id=&#34;examples&#34;&gt;Examples&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#examples&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-d27f581b-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;15&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-d27f581b-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-d27f581b-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;SEQUENCE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;next_id&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TABLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ids&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;int4&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;idesc&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRIGGER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ids_autoinc&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;BEFORE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ids&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EACH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ROW&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EXECUTE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;autoinc&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;id&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;next_id&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INTO&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ids&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;idesc&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;VALUES&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;first&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- id is auto-assigned from next_id
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Multiple auto-increment columns
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRIGGER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;multi_autoinc&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;BEFORE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my_table&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EACH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ROW&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EXECUTE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;autoinc&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;col1&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;seq1&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;col2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;seq2&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>insert_username</title>
      <link>https://ext.pgsty.com/e/insert_username/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/insert_username/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/contrib-spi.html#CONTRIB-SPI-INSERT-USERNAME&#34;&gt;&lt;strong&gt;insert_username&lt;/strong&gt;&lt;/a&gt; : functions for tracking who changed a table&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;4882&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/contrib-spi.html#CONTRIB-SPI-INSERT-USERNAME&#34;&gt;insert_username&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/insert_username&#34; title=&#34;Extension: insert_username&#34;&gt;insert_username&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-func pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/func/&#34; title=&#34;FUNC — Functions&#34;&gt;&lt;i class=&#34;fa-solid fa-superscript&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;FUNC&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/tcn&#34; title=&#34;Extension: tcn&#34;&gt;tcn&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/refint&#34; title=&#34;Extension: refint&#34;&gt;refint&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/autoinc&#34; title=&#34;Extension: autoinc&#34;&gt;autoinc&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/moddatetime&#34; title=&#34;Extension: moddatetime&#34;&gt;moddatetime&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/table_log&#34; title=&#34;Extension: table_log&#34;&gt;table_log&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-afb69fbf-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-afb69fbf-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-afb69fbf-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;insert_username&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/contrib-spi.html&#34;&gt;insert_username: track who modified a table row&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides a trigger function that stores the current user&amp;rsquo;s name into a specified text column.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-afb69fbf-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-afb69fbf-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-afb69fbf-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;insert_username&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;trigger-function&#34;&gt;Trigger Function&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#trigger-function&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Function&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;insert_username()&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Store current username in the specified column&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;p&gt;Parameter: name of the text column to store the username.&lt;/p&gt;
&lt;h3 id=&#34;examples&#34;&gt;Examples&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#examples&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-afb69fbf-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;20&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-afb69fbf-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-afb69fbf-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TABLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;audit_log&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;serial&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;PRIMARY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;KEY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;data&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;modified_by&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Track who inserts
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRIGGER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;set_insert_user&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;BEFORE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;audit_log&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EACH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ROW&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EXECUTE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;insert_username&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;modified_by&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Track who updates
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRIGGER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;set_update_user&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;BEFORE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;UPDATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;audit_log&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EACH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ROW&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EXECUTE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;insert_username&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;modified_by&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INTO&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;audit_log&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;data&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;VALUES&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;test&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;modified_by&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;audit_log&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- returns current user&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>moddatetime</title>
      <link>https://ext.pgsty.com/e/moddatetime/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/moddatetime/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/contrib-spi.html#CONTRIB-SPI-MODDATETIME&#34;&gt;&lt;strong&gt;moddatetime&lt;/strong&gt;&lt;/a&gt; : functions for tracking last modification time&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;4883&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/contrib-spi.html#CONTRIB-SPI-MODDATETIME&#34;&gt;moddatetime&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/moddatetime&#34; title=&#34;Extension: moddatetime&#34;&gt;moddatetime&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-func pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/func/&#34; title=&#34;FUNC — Functions&#34;&gt;&lt;i class=&#34;fa-solid fa-superscript&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;FUNC&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/tcn&#34; title=&#34;Extension: tcn&#34;&gt;tcn&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/refint&#34; title=&#34;Extension: refint&#34;&gt;refint&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/autoinc&#34; title=&#34;Extension: autoinc&#34;&gt;autoinc&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/insert_username&#34; title=&#34;Extension: insert_username&#34;&gt;insert_username&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/table_log&#34; title=&#34;Extension: table_log&#34;&gt;table_log&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-3f4ed8c3-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-3f4ed8c3-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-3f4ed8c3-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;moddatetime&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/contrib-spi.html&#34;&gt;moddatetime: track modification timestamp&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides a trigger function that stores the current timestamp when a row is modified.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-3f4ed8c3-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-3f4ed8c3-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-3f4ed8c3-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;moddatetime&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;trigger-function&#34;&gt;Trigger Function&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#trigger-function&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Function&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;moddatetime()&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Store current timestamp in the specified column on UPDATE&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;p&gt;Parameter: name of the &lt;code&gt;timestamp&lt;/code&gt; or &lt;code&gt;timestamp with time zone&lt;/code&gt; column to update.&lt;/p&gt;
&lt;h3 id=&#34;examples&#34;&gt;Examples&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#examples&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-3f4ed8c3-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;13&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-3f4ed8c3-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-3f4ed8c3-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TABLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;documents&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;serial&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;PRIMARY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;KEY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;content&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;modified_at&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;timestamp&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;with&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;time&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;zone&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRIGGER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;set_modified&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;BEFORE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;UPDATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;documents&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EACH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ROW&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EXECUTE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;moddatetime&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;modified_at&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;UPDATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;documents&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;SET&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;content&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;new content&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- modified_at is automatically set to current timestamp&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>tsm_system_time</title>
      <link>https://ext.pgsty.com/e/tsm_system_time/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/tsm_system_time/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/tsm-system-time.html&#34;&gt;&lt;strong&gt;tsm_system_time&lt;/strong&gt;&lt;/a&gt; : TABLESAMPLE method which accepts time in milliseconds as a limit&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;4890&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/tsm-system-time.html&#34;&gt;tsm_system_time&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/tsm_system_time&#34; title=&#34;Extension: tsm_system_time&#34;&gt;tsm_system_time&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-func pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/func/&#34; title=&#34;FUNC — Functions&#34;&gt;&lt;i class=&#34;fa-solid fa-superscript&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;FUNC&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/faker&#34; title=&#34;Extension: faker&#34;&gt;faker&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/dbt2&#34; title=&#34;Extension: dbt2&#34;&gt;dbt2&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/random&#34; title=&#34;Extension: random&#34;&gt;random&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/tsm_system_rows&#34; title=&#34;Extension: tsm_system_rows&#34;&gt;tsm_system_rows&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_mockable&#34; title=&#34;Extension: pg_mockable&#34;&gt;pg_mockable&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgsqlmock&#34; title=&#34;Extension: pgsqlmock&#34;&gt;pgsqlmock&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgtap&#34; title=&#34;Extension: pgtap&#34;&gt;pgtap&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/omni_test&#34; title=&#34;Extension: omni_test&#34;&gt;omni_test&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-285f6fe5-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-285f6fe5-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-285f6fe5-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tsm_system_time&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/tsm-system-time.html&#34;&gt;tsm_system_time: time-based TABLESAMPLE method&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides the &lt;code&gt;SYSTEM_TIME&lt;/code&gt; table sampling method that returns as many rows as can be read within a specified time limit.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-285f6fe5-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-285f6fe5-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-285f6fe5-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tsm_system_time&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;tablesample-method&#34;&gt;TABLESAMPLE Method&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#tablesample-method&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;SYSTEM_TIME(milliseconds float)&lt;/code&gt; &amp;ndash; maximum time to spend reading the table.&lt;/p&gt;
&lt;h3 id=&#34;examples&#34;&gt;Examples&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#examples&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-285f6fe5-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;5&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-285f6fe5-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-285f6fe5-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Sample rows readable within 1 second
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my_table&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;TABLESAMPLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;SYSTEM_TIME&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1000&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Sample from a large table with a 500ms budget
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;count&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;large_table&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;TABLESAMPLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;SYSTEM_TIME&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;500&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;Performs block-level sampling (not row-level). If the entire table can be read within the time limit, all rows are returned. Does not support &lt;code&gt;REPEATABLE&lt;/code&gt;.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>dict_xsyn</title>
      <link>https://ext.pgsty.com/e/dict_xsyn/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/dict_xsyn/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/dict-xsyn.html&#34;&gt;&lt;strong&gt;dict_xsyn&lt;/strong&gt;&lt;/a&gt; : text search dictionary template for extended synonym processing&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;4900&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/dict-xsyn.html&#34;&gt;dict_xsyn&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/dict_xsyn&#34; title=&#34;Extension: dict_xsyn&#34;&gt;dict_xsyn&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-func pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/func/&#34; title=&#34;FUNC — Functions&#34;&gt;&lt;i class=&#34;fa-solid fa-superscript&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;FUNC&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/dict_int&#34; title=&#34;Extension: dict_int&#34;&gt;dict_int&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/unaccent&#34; title=&#34;Extension: unaccent&#34;&gt;unaccent&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_tokenizer&#34; title=&#34;Extension: pg_tokenizer&#34;&gt;pg_tokenizer&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgroonga&#34; title=&#34;Extension: pgroonga&#34;&gt;pgroonga&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_kazsearch&#34; title=&#34;Extension: pg_kazsearch&#34;&gt;pg_kazsearch&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_jieba&#34; title=&#34;Extension: pg_jieba&#34;&gt;pg_jieba&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_cjk_parser&#34; title=&#34;Extension: pg_cjk_parser&#34;&gt;pg_cjk_parser&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/zhparser&#34; title=&#34;Extension: zhparser&#34;&gt;zhparser&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-a7fd03da-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-a7fd03da-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-a7fd03da-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dict_xsyn&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/dict-xsyn.html&#34;&gt;dict_xsyn: extended synonym dictionary for text search&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides an extended synonym dictionary template for text search, replacing words with groups of synonyms.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-a7fd03da-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-a7fd03da-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-a7fd03da-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dict_xsyn&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;configuration-parameters&#34;&gt;Configuration Parameters&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#configuration-parameters&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Parameter&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Default&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;matchorig&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Accept original word&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;matchsynonyms&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Accept synonyms as input&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;keeporig&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Include original in output&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;keepsynonyms&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Include synonyms in output&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;rules&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Base name of synonym file in &lt;code&gt;$SHAREDIR/tsearch_data/&lt;/code&gt; (&lt;code&gt;.rules&lt;/code&gt; extension)&lt;/td&gt;
      &lt;td&gt;&amp;ndash;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;rules-file-format&#34;&gt;Rules File Format&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#rules-file-format&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-a7fd03da-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-a7fd03da-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-a7fd03da-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;word syn1 syn2 syn3&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;Lines starting with &lt;code&gt;#&lt;/code&gt; are comments.&lt;/p&gt;
&lt;h3 id=&#34;examples&#34;&gt;Examples&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#examples&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-a7fd03da-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;15&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-a7fd03da-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-a7fd03da-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Configure the dictionary
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;ALTER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;TEXT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;SEARCH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DICTIONARY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xsyn&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;RULES&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;my_rules&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;KEEPORIG&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Test the dictionary
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ts_lexize&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;xsyn&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;word&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- {word,syn1,syn2,syn3}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Match synonyms as input too
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;ALTER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;TEXT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;SEARCH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DICTIONARY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xsyn&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;RULES&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;my_rules&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;MATCHSYNONYMS&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ts_lexize&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;xsyn&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;syn1&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- {syn1,syn2,syn3}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Use in a text search configuration
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;ALTER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;TEXT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;SEARCH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;CONFIGURATION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;english&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ALTER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;MAPPING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;word&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;asciiword&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WITH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xsyn&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;english_stem&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>tsm_system_rows</title>
      <link>https://ext.pgsty.com/e/tsm_system_rows/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/tsm_system_rows/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/tsm-system-rows.html&#34;&gt;&lt;strong&gt;tsm_system_rows&lt;/strong&gt;&lt;/a&gt; : TABLESAMPLE method which accepts number of rows as a limit&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;4910&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/tsm-system-rows.html&#34;&gt;tsm_system_rows&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/tsm_system_rows&#34; title=&#34;Extension: tsm_system_rows&#34;&gt;tsm_system_rows&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-func pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/func/&#34; title=&#34;FUNC — Functions&#34;&gt;&lt;i class=&#34;fa-solid fa-superscript&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;FUNC&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Need By&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/documentdb&#34; title=&#34;Extension: documentdb&#34;&gt;documentdb&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/faker&#34; title=&#34;Extension: faker&#34;&gt;faker&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/dbt2&#34; title=&#34;Extension: dbt2&#34;&gt;dbt2&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/random&#34; title=&#34;Extension: random&#34;&gt;random&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/tsm_system_time&#34; title=&#34;Extension: tsm_system_time&#34;&gt;tsm_system_time&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_mockable&#34; title=&#34;Extension: pg_mockable&#34;&gt;pg_mockable&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgsqlmock&#34; title=&#34;Extension: pgsqlmock&#34;&gt;pgsqlmock&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgtap&#34; title=&#34;Extension: pgtap&#34;&gt;pgtap&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/omni_test&#34; title=&#34;Extension: omni_test&#34;&gt;omni_test&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-fc81474f-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-fc81474f-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-fc81474f-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tsm_system_rows&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/tsm-system-rows.html&#34;&gt;tsm_system_rows: row-count-based TABLESAMPLE method&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides the &lt;code&gt;SYSTEM_ROWS&lt;/code&gt; table sampling method that returns exactly the specified number of rows.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-fc81474f-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-fc81474f-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-fc81474f-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tsm_system_rows&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;tablesample-method&#34;&gt;TABLESAMPLE Method&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#tablesample-method&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;SYSTEM_ROWS(count int)&lt;/code&gt; &amp;ndash; maximum number of rows to return.&lt;/p&gt;
&lt;h3 id=&#34;examples&#34;&gt;Examples&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#examples&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-fc81474f-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;5&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-fc81474f-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-fc81474f-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Sample exactly 100 rows
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my_table&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;TABLESAMPLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;SYSTEM_ROWS&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;100&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Quick peek at 10 rows from a large table
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;large_table&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;TABLESAMPLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;SYSTEM_ROWS&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;10&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;Performs block-level sampling (may exhibit clustering effects with small samples). Returns all rows if the table has fewer rows than requested. Does not support &lt;code&gt;REPEATABLE&lt;/code&gt;.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>tcn</title>
      <link>https://ext.pgsty.com/e/tcn/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/tcn/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/tcn.html&#34;&gt;&lt;strong&gt;tcn&lt;/strong&gt;&lt;/a&gt; : Triggered change notifications&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;4920&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/tcn.html&#34;&gt;tcn&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/tcn&#34; title=&#34;Extension: tcn&#34;&gt;tcn&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-func pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/func/&#34; title=&#34;FUNC — Functions&#34;&gt;&lt;i class=&#34;fa-solid fa-superscript&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;FUNC&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgmq&#34; title=&#34;Extension: pgmq&#34;&gt;pgmq&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgmb&#34; title=&#34;Extension: pgmb&#34;&gt;pgmb&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ulak&#34; title=&#34;Extension: ulak&#34;&gt;ulak&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/redis&#34; title=&#34;Extension: redis&#34;&gt;redis&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgq&#34; title=&#34;Extension: pgq&#34;&gt;pgq&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgmqtt&#34; title=&#34;Extension: pgmqtt&#34;&gt;pgmqtt&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_durable&#34; title=&#34;Extension: pg_durable&#34;&gt;pg_durable&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/redis_fdw&#34; title=&#34;Extension: redis_fdw&#34;&gt;redis_fdw&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/fsm_core&#34; title=&#34;Extension: fsm_core&#34;&gt;fsm_core&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/refint&#34; title=&#34;Extension: refint&#34;&gt;refint&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-a3bba2a3-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-a3bba2a3-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-a3bba2a3-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tcn&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/tcn.html&#34;&gt;tcn: triggered change notifications via LISTEN/NOTIFY&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides a trigger function that sends NOTIFY events with information about changed rows, enabling asynchronous change tracking.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-a3bba2a3-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-a3bba2a3-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-a3bba2a3-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tcn&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;trigger-function&#34;&gt;Trigger Function&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#trigger-function&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Function&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;triggered_change_notification()&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Send NOTIFY on row changes with primary key info&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;p&gt;Optional parameter: custom channel name (defaults to &lt;code&gt;tcn&lt;/code&gt;).&lt;/p&gt;
&lt;h3 id=&#34;notification-payload-format&#34;&gt;Notification Payload Format&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#notification-payload-format&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-a3bba2a3-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-a3bba2a3-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-a3bba2a3-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&amp;#34;table_name&amp;#34;,operation,&amp;#34;column&amp;#34;=&amp;#39;value&amp;#39;,&amp;#34;column&amp;#34;=&amp;#39;value&amp;#39;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;Operations: &lt;code&gt;I&lt;/code&gt; (INSERT), &lt;code&gt;U&lt;/code&gt; (UPDATE), &lt;code&gt;D&lt;/code&gt; (DELETE).&lt;/p&gt;
&lt;h3 id=&#34;examples&#34;&gt;Examples&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#examples&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-a3bba2a3-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;31&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-a3bba2a3-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-a3bba2a3-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TABLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tcndata&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;NOT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;NULL&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;b&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;date&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;NOT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;NULL&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;c&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;PRIMARY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;KEY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;b&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Attach the trigger
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRIGGER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tcndata_tcn&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AFTER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;OR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;UPDATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;OR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DELETE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tcndata&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EACH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ROW&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EXECUTE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;triggered_change_notification&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;();&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Listen for notifications
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;LISTEN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tcn&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Changes trigger notifications:
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INTO&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tcndata&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;VALUES&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;2024-01-01&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;test&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Notification: &amp;#34;tcndata&amp;#34;,I,&amp;#34;a&amp;#34;=&amp;#39;1&amp;#39;,&amp;#34;b&amp;#34;=&amp;#39;2024-01-01&amp;#39;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;UPDATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tcndata&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;SET&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;c&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;updated&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Notification: &amp;#34;tcndata&amp;#34;,U,&amp;#34;a&amp;#34;=&amp;#39;1&amp;#39;,&amp;#34;b&amp;#34;=&amp;#39;2024-01-01&amp;#39;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;DELETE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tcndata&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Notification: &amp;#34;tcndata&amp;#34;,D,&amp;#34;a&amp;#34;=&amp;#39;1&amp;#39;,&amp;#34;b&amp;#34;=&amp;#39;2024-01-01&amp;#39;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Use a custom channel name
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRIGGER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my_trigger&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AFTER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;OR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;UPDATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;OR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DELETE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my_table&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EACH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ROW&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EXECUTE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;triggered_change_notification&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;my_channel&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>uuid-ossp</title>
      <link>https://ext.pgsty.com/e/uuid-ossp/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/uuid-ossp/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/uuid-ossp.html&#34;&gt;&lt;strong&gt;uuid-ossp&lt;/strong&gt;&lt;/a&gt; : generate universally unique identifiers (UUIDs)&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;4930&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/uuid-ossp.html&#34;&gt;uuid-ossp&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/uuid-ossp&#34; title=&#34;Extension: uuid-ossp&#34;&gt;uuid-ossp&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.1&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-func pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/func/&#34; title=&#34;FUNC — Functions&#34;&gt;&lt;i class=&#34;fa-solid fa-superscript&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;FUNC&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Need By&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/babelfishpg_tsql&#34; title=&#34;Extension: babelfishpg_tsql&#34;&gt;babelfishpg_tsql&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/bundle&#34; title=&#34;Extension: bundle&#34;&gt;bundle&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/datalink&#34; title=&#34;Extension: datalink&#34;&gt;datalink&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/launchql-extension-verify&#34; title=&#34;Extension: launchql-extension-verify&#34;&gt;launchql-extension-verify&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/launchql-inflection&#34; title=&#34;Extension: launchql-inflection&#34;&gt;launchql-inflection&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/launchql-jwt-claims&#34; title=&#34;Extension: launchql-jwt-claims&#34;&gt;launchql-jwt-claims&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/npm&#34; title=&#34;Extension: npm&#34;&gt;npm&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_abris&#34; title=&#34;Extension: pg_abris&#34;&gt;pg_abris&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_dms&#34; title=&#34;Extension: pg_dms&#34;&gt;pg_dms&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/provsql&#34; title=&#34;Extension: provsql&#34;&gt;provsql&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ruid&#34; title=&#34;Extension: ruid&#34;&gt;ruid&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/skitch-extension-jobs&#34; title=&#34;Extension: skitch-extension-jobs&#34;&gt;skitch-extension-jobs&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/skitch-extension-verify&#34; title=&#34;Extension: skitch-extension-verify&#34;&gt;skitch-extension-verify&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/supa_audit&#34; title=&#34;Extension: supa_audit&#34;&gt;supa_audit&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/types&#34; title=&#34;Extension: types&#34;&gt;types&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_uuidv7&#34; title=&#34;Extension: pg_uuidv7&#34;&gt;pg_uuidv7&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/sequential_uuids&#34; title=&#34;Extension: sequential_uuids&#34;&gt;sequential_uuids&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_idkit&#34; title=&#34;Extension: pg_idkit&#34;&gt;pg_idkit&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgx_ulid&#34; title=&#34;Extension: pgx_ulid&#34;&gt;pgx_ulid&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/snowflake&#34; title=&#34;Extension: snowflake&#34;&gt;snowflake&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_uuid_v8&#34; title=&#34;Extension: pg_uuid_v8&#34;&gt;pg_uuid_v8&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/typeid&#34; title=&#34;Extension: typeid&#34;&gt;typeid&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-64dc09fc-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-64dc09fc-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-64dc09fc-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;uuid&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ossp&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/uuid-ossp.html&#34;&gt;uuid-ossp: UUID generation functions&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides functions to generate UUIDs using several standard algorithms. Note: for simple random UUIDs, consider using the built-in &lt;code&gt;gen_random_uuid()&lt;/code&gt; instead.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-64dc09fc-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-64dc09fc-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-64dc09fc-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;uuid-ossp&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;uuid-generation-functions&#34;&gt;UUID Generation Functions&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#uuid-generation-functions&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Function&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;uuid_generate_v1()&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Version 1: MAC address + timestamp&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;uuid_generate_v1mc()&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Version 1 with random multicast MAC&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;uuid_generate_v3(namespace uuid, name text)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Version 3: MD5 hash of namespace + name&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;uuid_generate_v4()&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Version 4: fully random&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;uuid_generate_v5(namespace uuid, name text)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Version 5: SHA-1 hash of namespace + name (preferred over v3)&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;namespace-constants&#34;&gt;Namespace Constants&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#namespace-constants&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Function&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;uuid_nil()&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Nil UUID (all zeros)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;uuid_ns_dns()&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;DNS namespace&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;uuid_ns_url()&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;URL namespace&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;uuid_ns_oid()&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;ISO OID namespace&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;uuid_ns_x500()&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;X.500 DN namespace&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;examples&#34;&gt;Examples&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#examples&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-64dc09fc-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;14&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-64dc09fc-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-64dc09fc-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Random UUID (v4)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;uuid_generate_v4&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;();&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Timestamp-based UUID (v1)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;uuid_generate_v1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;();&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Deterministic UUID from name (v5, preferred over v3)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;uuid_generate_v5&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;uuid_ns_url&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;http://www.postgresql.org&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Use as default primary key
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TABLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;items&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;uuid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DEFAULT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;uuid_generate_v4&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;PRIMARY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;KEY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>btree_gist</title>
      <link>https://ext.pgsty.com/e/btree_gist/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/btree_gist/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/btree-gist.html&#34;&gt;&lt;strong&gt;btree_gist&lt;/strong&gt;&lt;/a&gt; : support for indexing common datatypes in GiST&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;4940&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/btree-gist.html&#34;&gt;btree_gist&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/btree_gist&#34; title=&#34;Extension: btree_gist&#34;&gt;btree_gist&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.7&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-func pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/func/&#34; title=&#34;FUNC — Functions&#34;&gt;&lt;i class=&#34;fa-solid fa-superscript&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;FUNC&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Need By&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/emaj&#34; title=&#34;Extension: emaj&#34;&gt;emaj&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/omni_auth&#34; title=&#34;Extension: omni_auth&#34;&gt;omni_auth&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/periods&#34; title=&#34;Extension: periods&#34;&gt;periods&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_lake_table&#34; title=&#34;Extension: pg_lake_table&#34;&gt;pg_lake_table&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgautofailover&#34; title=&#34;Extension: pgautofailover&#34;&gt;pgautofailover&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/powa&#34; title=&#34;Extension: powa&#34;&gt;powa&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ora_btree_gist&#34; title=&#34;Extension: ora_btree_gist&#34;&gt;ora_btree_gist&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/btree_gin&#34; title=&#34;Extension: btree_gin&#34;&gt;btree_gin&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/parray_gin&#34; title=&#34;Extension: parray_gin&#34;&gt;parray_gin&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/intarray&#34; title=&#34;Extension: intarray&#34;&gt;intarray&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/rum&#34; title=&#34;Extension: rum&#34;&gt;rum&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/bloom&#34; title=&#34;Extension: bloom&#34;&gt;bloom&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/db2fce&#34; title=&#34;Extension: db2fce&#34;&gt;db2fce&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/orafce&#34; title=&#34;Extension: orafce&#34;&gt;orafce&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.7&#34;&gt;1.7&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.7&#34;&gt;1.7&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.7&#34;&gt;1.7&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.7&#34;&gt;1.7&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.7&#34;&gt;1.7&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-206863d8-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-206863d8-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-206863d8-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;btree_gist&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/btree-gist.html&#34;&gt;btree_gist: B-tree equivalent GiST operator classes&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides GiST index operator classes for data types that normally only support B-tree indexing. Enables exclusion constraints combining equality with range operators.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-206863d8-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-206863d8-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-206863d8-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;btree_gist&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;supported-data-types&#34;&gt;Supported Data Types&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#supported-data-types&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;int2&lt;/code&gt;, &lt;code&gt;int4&lt;/code&gt;, &lt;code&gt;int8&lt;/code&gt;, &lt;code&gt;float4&lt;/code&gt;, &lt;code&gt;float8&lt;/code&gt;, &lt;code&gt;numeric&lt;/code&gt;, &lt;code&gt;timestamp with time zone&lt;/code&gt;, &lt;code&gt;timestamp without time zone&lt;/code&gt;, &lt;code&gt;time with time zone&lt;/code&gt;, &lt;code&gt;time without time zone&lt;/code&gt;, &lt;code&gt;date&lt;/code&gt;, &lt;code&gt;interval&lt;/code&gt;, &lt;code&gt;oid&lt;/code&gt;, &lt;code&gt;money&lt;/code&gt;, &lt;code&gt;char&lt;/code&gt;, &lt;code&gt;varchar&lt;/code&gt;, &lt;code&gt;text&lt;/code&gt;, &lt;code&gt;bytea&lt;/code&gt;, &lt;code&gt;bit&lt;/code&gt;, &lt;code&gt;varbit&lt;/code&gt;, &lt;code&gt;macaddr&lt;/code&gt;, &lt;code&gt;macaddr8&lt;/code&gt;, &lt;code&gt;inet&lt;/code&gt;, &lt;code&gt;cidr&lt;/code&gt;, &lt;code&gt;uuid&lt;/code&gt;, &lt;code&gt;bool&lt;/code&gt;, and all &lt;code&gt;enum&lt;/code&gt; types.&lt;/p&gt;
&lt;h3 id=&#34;distance-operator&#34;&gt;Distance Operator&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#distance-operator&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;The &lt;code&gt;&amp;lt;-&amp;gt;&lt;/code&gt; operator is provided for nearest-neighbor searches on numeric and temporal types.&lt;/p&gt;
&lt;h3 id=&#34;examples&#34;&gt;Examples&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#examples&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-206863d8-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;24&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-206863d8-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-206863d8-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- GiST index on integer column
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;idx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;test&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;GIST&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;test&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;10&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Nearest-neighbor search
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;lt;-&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;42&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dist&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;test&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ORDER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;BY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;lt;-&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;42&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;LIMIT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;10&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Exclusion constraint: each cage can only contain one type of animal
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TABLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;zoo&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;cage&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;integer&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;animal&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXCLUDE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;GIST&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;cage&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WITH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;animal&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WITH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;lt;&amp;gt;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INTO&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;zoo&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;VALUES&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;lion&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- OK
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INTO&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;zoo&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;VALUES&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;tiger&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- ERROR: conflicting key value
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;INSERT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INTO&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;zoo&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;VALUES&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;tiger&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- OK
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Exclusion constraint for non-overlapping time ranges per room
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TABLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;reservations&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;room&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;during&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tsrange&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXCLUDE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;GIST&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;room&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WITH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;during&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WITH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>btree_gin</title>
      <link>https://ext.pgsty.com/e/btree_gin/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/btree_gin/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/btree-gin.html&#34;&gt;&lt;strong&gt;btree_gin&lt;/strong&gt;&lt;/a&gt; : support for indexing common datatypes in GIN&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;4950&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/btree-gin.html&#34;&gt;btree_gin&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/btree_gin&#34; title=&#34;Extension: btree_gin&#34;&gt;btree_gin&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.3&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-func pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/func/&#34; title=&#34;FUNC — Functions&#34;&gt;&lt;i class=&#34;fa-solid fa-superscript&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;FUNC&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/ora_btree_gin&#34; title=&#34;Extension: ora_btree_gin&#34;&gt;ora_btree_gin&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/btree_gist&#34; title=&#34;Extension: btree_gist&#34;&gt;btree_gist&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/parray_gin&#34; title=&#34;Extension: parray_gin&#34;&gt;parray_gin&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/intarray&#34; title=&#34;Extension: intarray&#34;&gt;intarray&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/rum&#34; title=&#34;Extension: rum&#34;&gt;rum&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/bloom&#34; title=&#34;Extension: bloom&#34;&gt;bloom&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/db2fce&#34; title=&#34;Extension: db2fce&#34;&gt;db2fce&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/orafce&#34; title=&#34;Extension: orafce&#34;&gt;orafce&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.3&#34;&gt;1.3&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.3&#34;&gt;1.3&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.3&#34;&gt;1.3&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.3&#34;&gt;1.3&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.3&#34;&gt;1.3&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-7eb7f161-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-7eb7f161-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-7eb7f161-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;btree_gin&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/btree-gin.html&#34;&gt;btree_gin: B-tree equivalent GIN operator classes&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides GIN index operator classes for data types that normally only support B-tree indexing. Useful for multicolumn GIN indexes that combine GIN-indexable and B-tree-indexable columns.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-7eb7f161-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-7eb7f161-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-7eb7f161-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;btree_gin&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;supported-data-types&#34;&gt;Supported Data Types&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#supported-data-types&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;int2&lt;/code&gt;, &lt;code&gt;int4&lt;/code&gt;, &lt;code&gt;int8&lt;/code&gt;, &lt;code&gt;float4&lt;/code&gt;, &lt;code&gt;float8&lt;/code&gt;, &lt;code&gt;numeric&lt;/code&gt;, &lt;code&gt;timestamp with time zone&lt;/code&gt;, &lt;code&gt;timestamp without time zone&lt;/code&gt;, &lt;code&gt;time with time zone&lt;/code&gt;, &lt;code&gt;time without time zone&lt;/code&gt;, &lt;code&gt;date&lt;/code&gt;, &lt;code&gt;interval&lt;/code&gt;, &lt;code&gt;oid&lt;/code&gt;, &lt;code&gt;money&lt;/code&gt;, &lt;code&gt;char&lt;/code&gt;, &lt;code&gt;varchar&lt;/code&gt;, &lt;code&gt;text&lt;/code&gt;, &lt;code&gt;bytea&lt;/code&gt;, &lt;code&gt;macaddr&lt;/code&gt;, &lt;code&gt;macaddr8&lt;/code&gt;, &lt;code&gt;inet&lt;/code&gt;, &lt;code&gt;cidr&lt;/code&gt;, &lt;code&gt;uuid&lt;/code&gt;, &lt;code&gt;bit&lt;/code&gt;, &lt;code&gt;varbit&lt;/code&gt;, &lt;code&gt;bool&lt;/code&gt;, &lt;code&gt;name&lt;/code&gt;, &lt;code&gt;bpchar&lt;/code&gt;, and all &lt;code&gt;enum&lt;/code&gt; types.&lt;/p&gt;
&lt;h3 id=&#34;examples&#34;&gt;Examples&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#examples&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-7eb7f161-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;9&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-7eb7f161-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-7eb7f161-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- GIN index on an integer column
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;idx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;test&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;GIN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;test&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;10&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Multicolumn GIN index combining full-text search with a scalar filter
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;idx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;articles&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;GIN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;body_tsvector&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;category&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;articles&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;body_tsvector&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@@&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;to_tsquery&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;PostgreSQL&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AND&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;category&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;tech&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;Note: btree_gin does not outperform standard B-tree indexes for single-column queries. Its main benefit is combining scalar columns with GIN-native columns (like tsvector or arrays) in a single multicolumn index.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>intarray</title>
      <link>https://ext.pgsty.com/e/intarray/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/intarray/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/intarray.html&#34;&gt;&lt;strong&gt;intarray&lt;/strong&gt;&lt;/a&gt; : functions, operators, and index support for 1-D arrays of integers&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;4960&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/intarray.html&#34;&gt;intarray&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/intarray&#34; title=&#34;Extension: intarray&#34;&gt;intarray&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.5&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-func pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/func/&#34; title=&#34;FUNC — Functions&#34;&gt;&lt;i class=&#34;fa-solid fa-superscript&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;FUNC&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;----dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/arraymath&#34; title=&#34;Extension: arraymath&#34;&gt;arraymath&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/floatvec&#34; title=&#34;Extension: floatvec&#34;&gt;floatvec&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/aggs_for_vecs&#34; title=&#34;Extension: aggs_for_vecs&#34;&gt;aggs_for_vecs&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/aggs_for_arrays&#34; title=&#34;Extension: aggs_for_arrays&#34;&gt;aggs_for_arrays&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/collection&#34; title=&#34;Extension: collection&#34;&gt;collection&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/hstore&#34; title=&#34;Extension: hstore&#34;&gt;hstore&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgbson&#34; title=&#34;Extension: pgbson&#34;&gt;pgbson&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/parray_gin&#34; title=&#34;Extension: parray_gin&#34;&gt;parray_gin&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/btree_gin&#34; title=&#34;Extension: btree_gin&#34;&gt;btree_gin&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/btree_gist&#34; title=&#34;Extension: btree_gist&#34;&gt;btree_gist&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.5&#34;&gt;1.5&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.5&#34;&gt;1.5&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.5&#34;&gt;1.5&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.5&#34;&gt;1.5&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.5&#34;&gt;1.5&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-3d1d99c2-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-3d1d99c2-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-3d1d99c2-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;intarray&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/intarray.html&#34;&gt;intarray: integer array functions and operators with index support&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides functions and operators for manipulating null-free integer arrays, with GiST and GIN index support for fast array searches.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-3d1d99c2-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-3d1d99c2-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-3d1d99c2-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;intarray&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;functions&#34;&gt;Functions&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#functions&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Function&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Example&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;icount(int[])&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Number of elements&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;icount(&#39;{1,2,3}&#39;)&lt;/code&gt; &amp;ndash; 3&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;sort(int[], dir)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Sort array (&lt;code&gt;&#39;asc&#39;&lt;/code&gt; or &lt;code&gt;&#39;desc&#39;&lt;/code&gt;)&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;sort(&#39;{3,1,2}&#39;,&#39;asc&#39;)&lt;/code&gt; &amp;ndash; &lt;code&gt;{1,2,3}&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;sort_asc(int[])&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Sort ascending&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;sort_asc(&#39;{3,1,2}&#39;)&lt;/code&gt; &amp;ndash; &lt;code&gt;{1,2,3}&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;sort_desc(int[])&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Sort descending&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;sort_desc(&#39;{3,1,2}&#39;)&lt;/code&gt; &amp;ndash; &lt;code&gt;{3,2,1}&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;uniq(int[])&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Remove adjacent duplicates&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;uniq(sort(&#39;{1,2,3,2,1}&#39;))&lt;/code&gt; &amp;ndash; &lt;code&gt;{1,2,3}&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;idx(int[], item)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Index of first match&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;idx(&#39;{11,22,33}&#39;, 22)&lt;/code&gt; &amp;ndash; 2&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;subarray(int[], start, len)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Extract sub-array&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;subarray(&#39;{1,2,3,4}&#39;, 2, 2)&lt;/code&gt; &amp;ndash; &lt;code&gt;{2,3}&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;intset(int)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Make single-element array&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;intset(42)&lt;/code&gt; &amp;ndash; &lt;code&gt;{42}&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;operators&#34;&gt;Operators&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#operators&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Operator&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;&amp;amp;&amp;amp;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Arrays overlap (have common elements)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;@&amp;gt;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Left array contains right&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;&amp;lt;@&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Left array is contained in right&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;#&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Number of elements&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;+&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Array concatenation / append element&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;-&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Remove elements&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;|&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Union of arrays&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;&amp;amp;&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Intersection of arrays&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;@@&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Array matches a query expression&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;~~&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Query expression matches array&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;index-support&#34;&gt;Index Support&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#index-support&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-3d1d99c2-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;10&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-3d1d99c2-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-3d1d99c2-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- GiST index for array containment/overlap queries
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;idx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;messages&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;GIST&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tags&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gist__intbig_ops&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- GIN index (alternative)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;INDEX&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;idx&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;messages&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;GIN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tags&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gin__int_ops&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Query with index support
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;messages&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tags&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;{1,2}&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- overlap
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;messages&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tags&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;{1,2}&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- contains
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;messages&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tags&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@@&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;1&amp;amp;(2|3)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- query expression&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>intagg</title>
      <link>https://ext.pgsty.com/e/intagg/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/intagg/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/intagg.html&#34;&gt;&lt;strong&gt;intagg&lt;/strong&gt;&lt;/a&gt; : integer aggregator and enumerator (obsolete)&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;4970&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/intagg.html&#34;&gt;intagg&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/intagg&#34; title=&#34;Extension: intagg&#34;&gt;intagg&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.1&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-func pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/func/&#34; title=&#34;FUNC — Functions&#34;&gt;&lt;i class=&#34;fa-solid fa-superscript&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;FUNC&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;----d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/intarray&#34; title=&#34;Extension: intarray&#34;&gt;intarray&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/count_distinct&#34; title=&#34;Extension: count_distinct&#34;&gt;count_distinct&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/arraymath&#34; title=&#34;Extension: arraymath&#34;&gt;arraymath&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-36694db4-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-36694db4-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-36694db4-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;intagg&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/intagg.html&#34;&gt;intagg: integer aggregator and enumerator (obsolete)&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Provides an integer aggregator and enumerator. These are now wrappers around the built-in &lt;code&gt;array_agg()&lt;/code&gt; and &lt;code&gt;unnest()&lt;/code&gt; functions.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-36694db4-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-36694db4-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-36694db4-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;intagg&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;functions&#34;&gt;Functions&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#functions&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Function&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;int_array_aggregate(integer)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Aggregate integers into an array (wrapper for &lt;code&gt;array_agg()&lt;/code&gt;)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;int_array_enum(integer[])&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Expand array into rows (wrapper for &lt;code&gt;unnest()&lt;/code&gt;)&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;examples&#34;&gt;Examples&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#examples&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-36694db4-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;8&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-36694db4-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-36694db4-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Aggregate integers into an array
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;id_left&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;int_array_aggregate&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;id_right&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;rights&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;many_to_many&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;GROUP&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;BY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;id_left&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Expand an integer array into rows
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;int_array_enum&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;ARRAY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;3&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;4&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Returns: 1, 2, 3, 4 (as separate rows)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;Note: This module is obsolete. Use the built-in &lt;code&gt;array_agg()&lt;/code&gt; and &lt;code&gt;unnest()&lt;/code&gt; functions instead for new code.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>dict_int</title>
      <link>https://ext.pgsty.com/e/dict_int/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/dict_int/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/dict-int.html&#34;&gt;&lt;strong&gt;dict_int&lt;/strong&gt;&lt;/a&gt; : text search dictionary template for integers&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;4980&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/dict-int.html&#34;&gt;dict_int&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/dict_int&#34; title=&#34;Extension: dict_int&#34;&gt;dict_int&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-func pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/func/&#34; title=&#34;FUNC — Functions&#34;&gt;&lt;i class=&#34;fa-solid fa-superscript&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;FUNC&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/dict_xsyn&#34; title=&#34;Extension: dict_xsyn&#34;&gt;dict_xsyn&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/unaccent&#34; title=&#34;Extension: unaccent&#34;&gt;unaccent&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_tokenizer&#34; title=&#34;Extension: pg_tokenizer&#34;&gt;pg_tokenizer&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgroonga&#34; title=&#34;Extension: pgroonga&#34;&gt;pgroonga&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_kazsearch&#34; title=&#34;Extension: pg_kazsearch&#34;&gt;pg_kazsearch&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_jieba&#34; title=&#34;Extension: pg_jieba&#34;&gt;pg_jieba&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_cjk_parser&#34; title=&#34;Extension: pg_cjk_parser&#34;&gt;pg_cjk_parser&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/zhparser&#34; title=&#34;Extension: zhparser&#34;&gt;zhparser&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-d1b5f372-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-d1b5f372-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-d1b5f372-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dict_int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/dict-int.html&#34;&gt;dict_int: integer text search dictionary&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Controls the indexing of integers in full-text search to prevent excessive unique-word growth that degrades search performance.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-d1b5f372-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-d1b5f372-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-d1b5f372-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dict_int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;configuration-parameters&#34;&gt;Configuration Parameters&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#configuration-parameters&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Parameter&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Default&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;maxlen&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Maximum number of digits allowed&lt;/td&gt;
      &lt;td&gt;6&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;rejectlong&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;If &lt;code&gt;true&lt;/code&gt;, reject overlength integers (stop word). If &lt;code&gt;false&lt;/code&gt;, truncate.&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;absval&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;If &lt;code&gt;true&lt;/code&gt;, strip leading &lt;code&gt;+&lt;/code&gt;/&lt;code&gt;-&lt;/code&gt; before applying maxlen&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;examples&#34;&gt;Examples&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#examples&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-d1b5f372-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;15&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-d1b5f372-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-d1b5f372-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Test the default dictionary
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ts_lexize&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;intdict&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;12345678&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- {123456}  (truncated to 6 digits by default)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Configure to reject long integers
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;ALTER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;TEXT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;SEARCH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DICTIONARY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;intdict&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;MAXLEN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;4&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;REJECTLONG&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ts_lexize&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;intdict&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;12345&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- {}  (rejected as stop word)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ts_lexize&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;intdict&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;1234&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- {1234}  (accepted)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Apply to a text search configuration
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;ALTER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;TEXT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;SEARCH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;CONFIGURATION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;english&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ALTER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;MAPPING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;uint&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WITH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;intdict&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>unaccent</title>
      <link>https://ext.pgsty.com/e/unaccent/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/unaccent/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/unaccent.html&#34;&gt;&lt;strong&gt;unaccent&lt;/strong&gt;&lt;/a&gt; : text search dictionary that removes accents&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;4990&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/unaccent.html&#34;&gt;unaccent&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/unaccent&#34; title=&#34;Extension: unaccent&#34;&gt;unaccent&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.1&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-func pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/func/&#34; title=&#34;FUNC — Functions&#34;&gt;&lt;i class=&#34;fa-solid fa-superscript&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;FUNC&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/dict_xsyn&#34; title=&#34;Extension: dict_xsyn&#34;&gt;dict_xsyn&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/dict_int&#34; title=&#34;Extension: dict_int&#34;&gt;dict_int&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_tokenizer&#34; title=&#34;Extension: pg_tokenizer&#34;&gt;pg_tokenizer&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgroonga&#34; title=&#34;Extension: pgroonga&#34;&gt;pgroonga&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/icu_ext&#34; title=&#34;Extension: icu_ext&#34;&gt;icu_ext&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_xenophile&#34; title=&#34;Extension: pg_xenophile&#34;&gt;pg_xenophile&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/citext&#34; title=&#34;Extension: citext&#34;&gt;citext&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_trgm&#34; title=&#34;Extension: pg_trgm&#34;&gt;pg_trgm&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-1ce7e69d-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-1ce7e69d-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-1ce7e69d-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;unaccent&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/unaccent.html&#34;&gt;unaccent: text search dictionary for accent removal&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Removes accents (diacritic signs) from text. Can be used as a text search dictionary or as a standalone function.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-1ce7e69d-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-1ce7e69d-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-1ce7e69d-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;unaccent&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;functions&#34;&gt;Functions&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#functions&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Function&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;unaccent(text)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Remove accents using the default dictionary&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;unaccent(dictionary regdictionary, text)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Remove accents using a specific dictionary&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;text-search-usage&#34;&gt;Text Search Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#text-search-usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-1ce7e69d-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;16&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-1ce7e69d-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-1ce7e69d-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Test the dictionary
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ts_lexize&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;unaccent&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Hôtel&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- {Hotel}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Create an accent-insensitive French text search config
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;TEXT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;SEARCH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;CONFIGURATION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fr&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;COPY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;french&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;ALTER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;TEXT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;SEARCH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;CONFIGURATION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fr&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ALTER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;MAPPING&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hword&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hword_part&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;word&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WITH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;unaccent&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;french_stem&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;to_tsvector&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;fr&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Hôtels de la Mer&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- &amp;#39;hotel&amp;#39;:1 &amp;#39;mer&amp;#39;:4
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Accent-insensitive search
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;to_tsvector&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;fr&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Hôtel de la Mer&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@@&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;to_tsquery&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;fr&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Hotels&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- true&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;standalone-function-usage&#34;&gt;Standalone Function Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#standalone-function-usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-1ce7e69d-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;4&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-1ce7e69d-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-1ce7e69d-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;unaccent&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Hôtel&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;           &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- Hotel
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;unaccent&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;café&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;            &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- cafe
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;unaccent&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;résumé&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;          &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- resume
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;unaccent&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;niño&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;            &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- nino&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>pg_prewarm</title>
      <link>https://ext.pgsty.com/e/pg_prewarm/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/pg_prewarm/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/pgprewarm.html&#34;&gt;&lt;strong&gt;pg_prewarm&lt;/strong&gt;&lt;/a&gt; : prewarm relation data&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;5890&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/pgprewarm.html&#34;&gt;pg_prewarm&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_prewarm&#34; title=&#34;Extension: pg_prewarm&#34;&gt;pg_prewarm&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.2&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-admin pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/admin/&#34; title=&#34;ADMIN — Administration&#34;&gt;&lt;i class=&#34;fa-solid fa-building&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;ADMIN&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--sLd--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Need By&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgcozy&#34; title=&#34;Extension: pgcozy&#34;&gt;pgcozy&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_buffercache&#34; title=&#34;Extension: pg_buffercache&#34;&gt;pg_buffercache&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgfincore&#34; title=&#34;Extension: pgfincore&#34;&gt;pgfincore&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgcozy&#34; title=&#34;Extension: pgcozy&#34;&gt;pgcozy&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_cooldown&#34; title=&#34;Extension: pg_cooldown&#34;&gt;pg_cooldown&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.2&#34;&gt;1.2&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/config/&#34;&gt;&lt;strong&gt;Config&lt;/strong&gt;&lt;/a&gt; this extension to &lt;a href=&#34;https://www.postgresql.org/docs/current/runtime-config-client.html#GUC-SHARED-PRELOAD-LIBRARIES&#34;&gt;&lt;strong&gt;&lt;code&gt;shared_preload_libraries&lt;/code&gt;&lt;/strong&gt;&lt;/a&gt;:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-53f70e90-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;ini&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-53f70e90-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-53f70e90-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-ini&#34; data-lang=&#34;ini&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;shared_preload_libraries&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;&amp;#39;pg_prewarm&amp;#39;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-53f70e90-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-53f70e90-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-53f70e90-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_prewarm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/pgprewarm.html&#34;&gt;pg_prewarm: prewarm relation data&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;pg_prewarm&lt;/code&gt; extension provides functions to load relation data into the operating system buffer cache or PostgreSQL buffer cache, reducing I/O latency for subsequent queries.&lt;/p&gt;
&lt;h3 id=&#34;prewarm-a-relation&#34;&gt;Prewarm a Relation&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#prewarm-a-relation&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-53f70e90-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;13&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-53f70e90-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-53f70e90-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Load entire table into PostgreSQL buffer cache (default mode)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_prewarm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;my_table&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Load with specific mode
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_prewarm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;my_table&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;prefetch&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- async OS prefetch
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_prewarm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;my_table&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;read&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- sync read into OS cache
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_prewarm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;my_table&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;buffer&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- load into PG buffer cache
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Load specific block range
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_prewarm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;my_table&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;buffer&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;main&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;999&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Prewarm an index
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_prewarm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;my_table_pkey&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;function-signature&#34;&gt;Function Signature&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#function-signature&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-53f70e90-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;6&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-53f70e90-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-53f70e90-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;pg_prewarm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;regclass&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;           &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;mode&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DEFAULT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;buffer&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;           &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fork&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DEFAULT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;main&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;           &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;first_block&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int8&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DEFAULT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;NULL&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;           &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;last_block&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int8&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DEFAULT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;NULL&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;int8&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;Returns the number of blocks prewarmed.&lt;/p&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Parameter&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;mode&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;prefetch&lt;/code&gt; (async OS), &lt;code&gt;read&lt;/code&gt; (sync OS), or &lt;code&gt;buffer&lt;/code&gt; (PG cache)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;fork&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Relation fork to prewarm (e.g., &lt;code&gt;main&lt;/code&gt;, &lt;code&gt;fsm&lt;/code&gt;, &lt;code&gt;vm&lt;/code&gt;)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;first_block&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;First block number (default: 0)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;last_block&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Last block number (default: last block of relation)&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;autoprewarm&#34;&gt;Autoprewarm&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#autoprewarm&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;When loaded via &lt;code&gt;shared_preload_libraries&lt;/code&gt;, autoprewarm periodically saves the list of buffers in the shared buffer cache to disk and restores them on restart.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-53f70e90-fence-4&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;5&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-53f70e90-fence-4&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-53f70e90-fence-4-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Manually launch autoprewarm worker
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;autoprewarm_start_worker&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;();&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Force immediate dump of buffer state
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;autoprewarm_dump_now&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;();&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- returns number of records written&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;guc-parameters&#34;&gt;GUC Parameters&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#guc-parameters&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Parameter&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Default&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;pg_prewarm.autoprewarm&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Enable autoprewarm background worker&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;pg_prewarm.autoprewarm_interval&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;&lt;code&gt;300s&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Interval between &lt;code&gt;autoprewarm.blocks&lt;/code&gt; file updates (0 = dump only at shutdown)&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;p&gt;Buffer state is saved to &lt;code&gt;autoprewarm.blocks&lt;/code&gt; in the data directory. After restart, two background workers reload the saved buffers.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>lo</title>
      <link>https://ext.pgsty.com/e/lo/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/lo/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/lo.html&#34;&gt;&lt;strong&gt;lo&lt;/strong&gt;&lt;/a&gt; : Large Object maintenance&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;5930&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/lo.html&#34;&gt;lo&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/lo&#34; title=&#34;Extension: lo&#34;&gt;lo&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.1&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-admin pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/admin/&#34; title=&#34;ADMIN — Administration&#34;&gt;&lt;i class=&#34;fa-solid fa-building&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;ADMIN&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-dt-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;yes&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/lolor&#34; title=&#34;Extension: lolor&#34;&gt;lolor&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_surgery&#34; title=&#34;Extension: pg_surgery&#34;&gt;pg_surgery&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_repack&#34; title=&#34;Extension: pg_repack&#34;&gt;pg_repack&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pglogical&#34; title=&#34;Extension: pglogical&#34;&gt;pglogical&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/spock&#34; title=&#34;Extension: spock&#34;&gt;spock&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.1&#34;&gt;1.1&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-5d454755-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-5d454755-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-5d454755-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lo&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/lo.html&#34;&gt;lo: Large Object maintenance&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;lo&lt;/code&gt; extension provides a data type and trigger function for managing PostgreSQL Large Objects, preventing orphaned objects when references are updated or deleted.&lt;/p&gt;
&lt;h3 id=&#34;data-type&#34;&gt;Data Type&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#data-type&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;The &lt;code&gt;lo&lt;/code&gt; type is a domain over &lt;code&gt;oid&lt;/code&gt;, used to identify columns that hold Large Object references. This is especially useful for ODBC driver compatibility.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-5d454755-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;4&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-5d454755-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-5d454755-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TABLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;image&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;title&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;raster&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lo&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- large object reference column
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;trigger-function&#34;&gt;Trigger Function&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#trigger-function&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;The &lt;code&gt;lo_manage()&lt;/code&gt; trigger automatically calls &lt;code&gt;lo_unlink()&lt;/code&gt; to delete the associated Large Object when a row is updated or deleted:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-5d454755-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;3&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-5d454755-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-5d454755-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRIGGER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t_raster&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;BEFORE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;UPDATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;OR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DELETE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;image&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EACH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ROW&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EXECUTE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lo_manage&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;raster&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;For multiple &lt;code&gt;lo&lt;/code&gt; columns, create a separate trigger for each:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-5d454755-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;13&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-5d454755-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-5d454755-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TABLE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gallery&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;title&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;     &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;thumbnail&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lo&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fullsize&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lo&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRIGGER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t_thumbnail&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;BEFORE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;UPDATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;OR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DELETE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gallery&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EACH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ROW&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EXECUTE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lo_manage&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;thumbnail&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRIGGER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t_fullsize&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;BEFORE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;UPDATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;OR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DELETE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gallery&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EACH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ROW&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EXECUTE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lo_manage&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fullsize&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;To restrict the trigger to column updates only:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-5d454755-fence-4&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;3&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-5d454755-fence-4&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-5d454755-fence-4-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;TRIGGER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t_raster&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;BEFORE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;UPDATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;OF&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;raster&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;OR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DELETE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;image&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FOR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EACH&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ROW&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;EXECUTE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FUNCTION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lo_manage&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;raster&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;limitations&#34;&gt;Limitations&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#limitations&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;DROP TABLE&lt;/code&gt; and &lt;code&gt;TRUNCATE&lt;/code&gt; do not fire row-level triggers, so Large Objects will be orphaned. Run &lt;code&gt;DELETE FROM table&lt;/code&gt; before dropping.&lt;/li&gt;
&lt;li&gt;The trigger assumes each Large Object is referenced by only one column/row.&lt;/li&gt;
&lt;li&gt;Use the &lt;code&gt;vacuumlo&lt;/code&gt; utility to clean up any orphaned Large Objects.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The extension is trusted and can be installed by non-superusers with &lt;code&gt;CREATE&lt;/code&gt; privilege.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>basic_archive</title>
      <link>https://ext.pgsty.com/e/basic_archive/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/basic_archive/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/basic-archive.html&#34;&gt;&lt;strong&gt;basic_archive&lt;/strong&gt;&lt;/a&gt; : an example of an archive module&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;5940&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/basic-archive.html&#34;&gt;basic_archive&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/basic_archive&#34; title=&#34;Extension: basic_archive&#34;&gt;basic_archive&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;-&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-admin pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/admin/&#34; title=&#34;ADMIN — Administration&#34;&gt;&lt;i class=&#34;fa-solid fa-building&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;ADMIN&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s----&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/aws_s3&#34; title=&#34;Extension: aws_s3&#34;&gt;aws_s3&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/basebackup_to_shell&#34; title=&#34;Extension: basebackup_to_shell&#34;&gt;basebackup_to_shell&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/external_file&#34; title=&#34;Extension: external_file&#34;&gt;external_file&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/file_fdw&#34; title=&#34;Extension: file_fdw&#34;&gt;file_fdw&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/repmgr&#34; title=&#34;Extension: repmgr&#34;&gt;repmgr&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_parquet&#34; title=&#34;Extension: pg_parquet&#34;&gt;pg_parquet&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_bulkload&#34; title=&#34;Extension: pg_bulkload&#34;&gt;pg_bulkload&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version -&#34;&gt;-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version -&#34;&gt;-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version -&#34;&gt;-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version -&#34;&gt;-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--red pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: not available&#34;&gt;N/A&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;This extension does not need &lt;code&gt;CREATE EXTENSION&lt;/code&gt; DDL command&lt;/p&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/basic-archive.html&#34;&gt;basic_archive: an example of an archive module&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;basic_archive&lt;/code&gt; module is a WAL archive module that copies completed WAL segment files to a specified directory. It serves as a reference implementation for custom archive modules.&lt;/p&gt;
&lt;h3 id=&#34;configuration&#34;&gt;Configuration&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#configuration&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Add to &lt;code&gt;postgresql.conf&lt;/code&gt;:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-b3ad0d17-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;ini&#34; data-td-line-count=&#34;3&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-b3ad0d17-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-b3ad0d17-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-ini&#34; data-lang=&#34;ini&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;archive_mode&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;&amp;#39;on&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;archive_library&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;&amp;#39;basic_archive&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;basic_archive.archive_directory&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;&amp;#39;/path/to/archive/directory&amp;#39;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;parameters&#34;&gt;Parameters&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#parameters&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Parameter&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Type&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;basic_archive.archive_directory&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;string&lt;/td&gt;
      &lt;td&gt;Directory to copy WAL files to (must already exist)&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;p&gt;If &lt;code&gt;archive_mode&lt;/code&gt; is enabled but &lt;code&gt;basic_archive.archive_directory&lt;/code&gt; is empty (default), the server will accumulate WAL files until a directory path is configured.&lt;/p&gt;
&lt;h3 id=&#34;notes&#34;&gt;Notes&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#notes&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The target directory must be created before use; the module will not create it&lt;/li&gt;
&lt;li&gt;After a server crash, temporary files with the &lt;code&gt;archtemp&lt;/code&gt; prefix may be left in the archive directory and should be deleted before restarting&lt;/li&gt;
&lt;li&gt;These temporary files can also be safely removed while the server is running, provided they are not related to an ongoing archive operation&lt;/li&gt;
&lt;li&gt;This module is primarily intended as a simple example and starting point for developing custom archive modules&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>basebackup_to_shell</title>
      <link>https://ext.pgsty.com/e/basebackup_to_shell/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/basebackup_to_shell/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/basebackup-to-shell.html&#34;&gt;&lt;strong&gt;basebackup_to_shell&lt;/strong&gt;&lt;/a&gt; : adds a custom basebackup target called shell&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;5950&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/basebackup-to-shell.html&#34;&gt;basebackup_to_shell&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/basebackup_to_shell&#34; title=&#34;Extension: basebackup_to_shell&#34;&gt;basebackup_to_shell&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;-&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-admin pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/admin/&#34; title=&#34;ADMIN — Administration&#34;&gt;&lt;i class=&#34;fa-solid fa-building&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;ADMIN&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s----&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/basic_archive&#34; title=&#34;Extension: basic_archive&#34;&gt;basic_archive&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/aws_s3&#34; title=&#34;Extension: aws_s3&#34;&gt;aws_s3&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/external_file&#34; title=&#34;Extension: external_file&#34;&gt;external_file&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/file_fdw&#34; title=&#34;Extension: file_fdw&#34;&gt;file_fdw&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/repmgr&#34; title=&#34;Extension: repmgr&#34;&gt;repmgr&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_parquet&#34; title=&#34;Extension: pg_parquet&#34;&gt;pg_parquet&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_bulkload&#34; title=&#34;Extension: pg_bulkload&#34;&gt;pg_bulkload&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version -&#34;&gt;-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version -&#34;&gt;-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version -&#34;&gt;-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version -&#34;&gt;-&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--red pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: not available&#34;&gt;N/A&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;This extension does not need &lt;code&gt;CREATE EXTENSION&lt;/code&gt; DDL command&lt;/p&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/basebackup-to-shell.html&#34;&gt;basebackup_to_shell: adds a custom basebackup target called shell&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;basebackup_to_shell&lt;/code&gt; module adds a custom &lt;code&gt;shell&lt;/code&gt; backup target to &lt;code&gt;pg_basebackup&lt;/code&gt;, allowing administrators to pipe backup archives through arbitrary shell commands.&lt;/p&gt;
&lt;h3 id=&#34;configuration&#34;&gt;Configuration&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#configuration&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Add to &lt;code&gt;postgresql.conf&lt;/code&gt;:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-122be68c-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;ini&#34; data-td-line-count=&#34;7&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-122be68c-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-122be68c-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-ini&#34; data-lang=&#34;ini&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;shared_preload_libraries&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;&amp;#39;basebackup_to_shell&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Command to execute for each archive; receives archive data on stdin&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;basebackup_to_shell.command&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;&amp;#39;gzip &amp;gt; /backup/%f.gz&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Optional: restrict usage to a specific role&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;basebackup_to_shell.required_role&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;&amp;#39;backup_admin&amp;#39;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;parameters&#34;&gt;Parameters&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#parameters&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Parameter&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Type&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;basebackup_to_shell.command&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;string&lt;/td&gt;
      &lt;td&gt;Shell command to execute; receives archive on stdin&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;basebackup_to_shell.required_role&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;string&lt;/td&gt;
      &lt;td&gt;Role required to use the shell target (empty = any replication user)&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;command-placeholders&#34;&gt;Command Placeholders&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#command-placeholders&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Placeholder&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Replaced With&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;%f&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Archive filename (e.g., &lt;code&gt;base.tar&lt;/code&gt;)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;%d&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;User-provided target detail string&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;%%&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;Literal &lt;code&gt;%&lt;/code&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;examples&#34;&gt;Examples&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#examples&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-122be68c-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;bash&#34; data-td-line-count=&#34;11&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-122be68c-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-122be68c-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Compress backups to a local directory&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# postgresql.conf: basebackup_to_shell.command = &amp;#39;gzip &amp;gt; /backup/%f.gz&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pg_basebackup --target&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;shell
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Upload to S3 with a detail parameter&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# postgresql.conf: basebackup_to_shell.command = &amp;#39;aws s3 cp - s3://bucket/%d/%f&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pg_basebackup --target&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;shell:myprefix
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Custom processing pipeline&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# postgresql.conf: basebackup_to_shell.command = &amp;#39;zstd | ssh backup-host &amp;#34;cat &amp;gt; /backup/%f.zst&amp;#34;&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pg_basebackup --target&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;shell&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;The &lt;code&gt;%d&lt;/code&gt; placeholder requires a target detail to be provided via &lt;code&gt;--target=shell:DETAIL&lt;/code&gt;. If &lt;code&gt;%d&lt;/code&gt; is not in the command, providing a detail is prohibited. Detail strings may only contain alphanumeric characters.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>old_snapshot</title>
      <link>https://ext.pgsty.com/e/old_snapshot/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/old_snapshot/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/oldsnapshot.html&#34;&gt;&lt;strong&gt;old_snapshot&lt;/strong&gt;&lt;/a&gt; : utilities in support of old_snapshot_threshold&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;5960&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/oldsnapshot.html&#34;&gt;old_snapshot&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/old_snapshot&#34; title=&#34;Extension: old_snapshot&#34;&gt;old_snapshot&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-admin pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/admin/&#34; title=&#34;ADMIN — Administration&#34;&gt;&lt;i class=&#34;fa-solid fa-building&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;ADMIN&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_dirtyread&#34; title=&#34;Extension: pg_dirtyread&#34;&gt;pg_dirtyread&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_visibility&#34; title=&#34;Extension: pg_visibility&#34;&gt;pg_visibility&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/temporal_tables&#34; title=&#34;Extension: temporal_tables&#34;&gt;temporal_tables&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pgstattuple&#34; title=&#34;Extension: pgstattuple&#34;&gt;pgstattuple&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--red pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: not available&#34;&gt;N/A&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--red pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: not available&#34;&gt;N/A&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-e07e5c54-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-e07e5c54-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-e07e5c54-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;old_snapshot&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/16/oldsnapshot.html&#34;&gt;old_snapshot: utilities in support of old_snapshot_threshold&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;old_snapshot&lt;/code&gt; extension provides inspection functions for the server state related to the &lt;code&gt;old_snapshot_threshold&lt;/code&gt; configuration parameter.&lt;/p&gt;
&lt;p&gt;Note: this chapter is removed from PostgreSQL current docs in newer releases; use versioned docs when needed.&lt;/p&gt;
&lt;h3 id=&#34;function&#34;&gt;Function&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#function&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-e07e5c54-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;2&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-e07e5c54-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-e07e5c54-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- View the timestamp-to-XID mapping table
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_old_snapshot_time_mapping&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;();&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;function-signature&#34;&gt;Function Signature&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#function-signature&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-e07e5c54-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;5&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-e07e5c54-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-e07e5c54-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;pg_old_snapshot_time_mapping&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;array_offset&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;OUT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;int4&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;end_timestamp&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;OUT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;timestamptz&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;newest_xmin&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;OUT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;SETOF&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;record&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;output-columns&#34;&gt;Output Columns&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#output-columns&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Column&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Type&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;array_offset&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;int4&lt;/td&gt;
      &lt;td&gt;Index position in the mapping array&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;end_timestamp&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;timestamptz&lt;/td&gt;
      &lt;td&gt;End of the corresponding one-minute interval&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;newest_xmin&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;xid&lt;/td&gt;
      &lt;td&gt;Newest xmin of any snapshot taken during that minute&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;context&#34;&gt;Context&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#context&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;PostgreSQL&amp;rsquo;s &lt;code&gt;old_snapshot_threshold&lt;/code&gt; parameter controls how long a snapshot can remain valid. The server maintains an internal mapping of timestamps to transaction IDs to implement this feature. This extension exposes that mapping for inspection and debugging.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-e07e5c54-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;7&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-e07e5c54-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-e07e5c54-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Check the old_snapshot_threshold setting
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SHOW&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;old_snapshot_threshold&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Inspect the current mapping entries
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;array_offset&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;end_timestamp&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;newest_xmin&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_old_snapshot_time_mapping&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;ORDER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;BY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;array_offset&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>adminpack</title>
      <link>https://ext.pgsty.com/e/adminpack/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/adminpack/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/16/adminpack.html&#34;&gt;&lt;strong&gt;adminpack&lt;/strong&gt;&lt;/a&gt; : administrative functions for PostgreSQL&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;5970&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/16/adminpack.html&#34;&gt;adminpack&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/adminpack&#34; title=&#34;Extension: adminpack&#34;&gt;adminpack&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;2.1&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-admin pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/admin/&#34; title=&#34;ADMIN — Administration&#34;&gt;&lt;i class=&#34;fa-solid fa-building&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;ADMIN&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_checksums&#34; title=&#34;Extension: pg_checksums&#34;&gt;pg_checksums&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/amcheck&#34; title=&#34;Extension: amcheck&#34;&gt;amcheck&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_repack&#34; title=&#34;Extension: pg_repack&#34;&gt;pg_repack&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_catcheck&#34; title=&#34;Extension: pg_catcheck&#34;&gt;pg_catcheck&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_surgery&#34; title=&#34;Extension: pg_surgery&#34;&gt;pg_surgery&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_orphaned&#34; title=&#34;Extension: pg_orphaned&#34;&gt;pg_orphaned&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_pathcheck&#34; title=&#34;Extension: pg_pathcheck&#34;&gt;pg_pathcheck&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_isok&#34; title=&#34;Extension: pg_isok&#34;&gt;pg_isok&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pageinspect&#34; title=&#34;Extension: pageinspect&#34;&gt;pageinspect&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_squeeze&#34; title=&#34;Extension: pg_squeeze&#34;&gt;pg_squeeze&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--red pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: not available&#34;&gt;N/A&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--red pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: not available&#34;&gt;N/A&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 2.1&#34;&gt;2.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 2.1&#34;&gt;2.1&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 2.1&#34;&gt;2.1&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-9b15d257-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-9b15d257-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-9b15d257-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;adminpack&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/16/adminpack.html&#34;&gt;adminpack: administrative functions for PostgreSQL&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;adminpack&lt;/code&gt; extension provides server-side file management and log access functions, primarily used by pgAdmin and other administration tools. All functions are restricted to superusers by default.&lt;/p&gt;
&lt;h3 id=&#34;file-operations&#34;&gt;File Operations&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#file-operations&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-9b15d257-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;17&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-9b15d257-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-9b15d257-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Write text to a file (append=false: file must not exist; append=true: append)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_file_write&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/tmp/test.txt&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Hello World&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;false&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- returns bytes written
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Append to existing file
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_file_write&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/tmp/test.txt&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;E&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;\nMore data&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Sync file to disk
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_file_sync&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/tmp/test.txt&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Rename a file
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_file_rename&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/tmp/old.txt&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/tmp/new.txt&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Rename with archiving (moves existing newname to archive first)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_file_rename&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/tmp/old.txt&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/tmp/new.txt&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/tmp/archive.txt&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Delete a file
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_file_unlink&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/tmp/test.txt&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;   &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;-- returns true on success&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;log-file-access&#34;&gt;Log File Access&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#log-file-access&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-9b15d257-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;2&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-9b15d257-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-9b15d257-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- List server log files (requires default log_filename format)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_logdir_ls&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;();&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;Returns timestamps and paths of log files from the &lt;code&gt;log_directory&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;function-reference&#34;&gt;Function Reference&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#function-reference&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Function&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Returns&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;pg_file_write(filename, data, append)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;bigint&lt;/td&gt;
      &lt;td&gt;Write text to file; returns bytes written&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;pg_file_sync(filename)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;void&lt;/td&gt;
      &lt;td&gt;Flush file or directory to disk&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;pg_file_rename(old, new [, archive])&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;boolean&lt;/td&gt;
      &lt;td&gt;Rename file, optionally archiving existing target&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;pg_file_unlink(filename)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;boolean&lt;/td&gt;
      &lt;td&gt;Delete a file&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;pg_logdir_ls()&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;setof record&lt;/td&gt;
      &lt;td&gt;List log files with timestamps&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;access-control&#34;&gt;Access Control&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#access-control&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;All functions default to superuser-only access&lt;/li&gt;
&lt;li&gt;Permissions can be granted via &lt;code&gt;GRANT&lt;/code&gt; to non-superusers&lt;/li&gt;
&lt;li&gt;File access is restricted to the database cluster directory unless the user has &lt;code&gt;pg_read_server_files&lt;/code&gt; or &lt;code&gt;pg_write_server_files&lt;/code&gt; roles&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Note: &lt;code&gt;adminpack&lt;/code&gt; was removed in PostgreSQL 17. For PostgreSQL 16 and earlier only.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>amcheck</title>
      <link>https://ext.pgsty.com/e/amcheck/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/amcheck/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/amcheck.html&#34;&gt;&lt;strong&gt;amcheck&lt;/strong&gt;&lt;/a&gt; : functions for verifying relation integrity&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;5980&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/amcheck.html&#34;&gt;amcheck&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/amcheck&#34; title=&#34;Extension: amcheck&#34;&gt;amcheck&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.4&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-admin pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/admin/&#34; title=&#34;ADMIN — Administration&#34;&gt;&lt;i class=&#34;fa-solid fa-building&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;ADMIN&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_checksums&#34; title=&#34;Extension: pg_checksums&#34;&gt;pg_checksums&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_catcheck&#34; title=&#34;Extension: pg_catcheck&#34;&gt;pg_catcheck&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_orphaned&#34; title=&#34;Extension: pg_orphaned&#34;&gt;pg_orphaned&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_pathcheck&#34; title=&#34;Extension: pg_pathcheck&#34;&gt;pg_pathcheck&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_isok&#34; title=&#34;Extension: pg_isok&#34;&gt;pg_isok&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_surgery&#34; title=&#34;Extension: pg_surgery&#34;&gt;pg_surgery&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pageinspect&#34; title=&#34;Extension: pageinspect&#34;&gt;pageinspect&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/adminpack&#34; title=&#34;Extension: adminpack&#34;&gt;adminpack&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_repack&#34; title=&#34;Extension: pg_repack&#34;&gt;pg_repack&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.4&#34;&gt;1.4&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.4&#34;&gt;1.4&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.4&#34;&gt;1.4&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.4&#34;&gt;1.4&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.4&#34;&gt;1.4&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-44ca74cf-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-44ca74cf-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-44ca74cf-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;amcheck&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/amcheck.html&#34;&gt;amcheck: functions for verifying relation integrity&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;amcheck&lt;/code&gt; extension provides functions to verify the logical consistency of B-tree indexes, GIN indexes, and heap (table) data, detecting corruption without modifying data.&lt;/p&gt;
&lt;h3 id=&#34;b-tree-index-verification&#34;&gt;B-Tree Index Verification&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#b-tree-index-verification&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-44ca74cf-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;14&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-44ca74cf-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-44ca74cf-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Lightweight check (AccessShareLock, safe for production)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bt_index_check&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;my_index&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- With heap-all-indexed verification
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bt_index_check&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;my_index&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;heapallindexed&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Thorough check including parent/child invariants (ShareLock, blocks writes)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bt_index_parent_check&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;my_index&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Most thorough: rootdescend re-finds each tuple from root
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bt_index_parent_check&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;my_index&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;heapallindexed&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;rootdescend&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;checkunique&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;check-all-catalog-indexes&#34;&gt;Check All Catalog Indexes&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#check-all-catalog-indexes&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-44ca74cf-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;10&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-44ca74cf-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-44ca74cf-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;bt_index_check&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;c&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;oid&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;c&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;relname&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;c&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;relpages&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_index&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;JOIN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_opclass&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;op&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;indclass&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;op&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;oid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;JOIN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_am&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;am&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;op&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;opcmethod&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;am&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;oid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;JOIN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_class&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;c&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;indexrelid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;c&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;oid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;JOIN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_namespace&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;n&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;c&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;relnamespace&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;n&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;oid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;am&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;amname&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;btree&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AND&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;n&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;nspname&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;pg_catalog&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AND&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;c&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;relpersistence&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;!=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;t&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AND&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;c&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;relkind&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;i&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AND&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;indisready&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AND&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;indisvalid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;ORDER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;BY&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;c&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;relpages&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;DESC&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;LIMIT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;10&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;gin-index-verification&#34;&gt;GIN Index Verification&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#gin-index-verification&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-44ca74cf-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-44ca74cf-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-44ca74cf-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;gin_index_check&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;my_gin_index&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;heap-table-verification&#34;&gt;Heap (Table) Verification&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#heap-table-verification&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-44ca74cf-fence-4&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;11&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-44ca74cf-fence-4&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-44ca74cf-fence-4-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Basic heap check
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;verify_heapam&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;my_table&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- With TOAST verification (slower)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;verify_heapam&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;my_table&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;check_toast&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Check specific block range
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;verify_heapam&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;my_table&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;startblock&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;endblock&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1000&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Stop at first corrupted block
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;verify_heapam&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;my_table&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;on_error_stop&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;Returns rows for each detected problem:&lt;/p&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Column&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Type&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;blkno&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;bigint&lt;/td&gt;
      &lt;td&gt;Block number with corruption&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;offnum&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;integer&lt;/td&gt;
      &lt;td&gt;Offset of corrupt tuple&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;attnum&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;integer&lt;/td&gt;
      &lt;td&gt;Attribute number (if column-specific)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;msg&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;text&lt;/td&gt;
      &lt;td&gt;Description of the problem&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h3 id=&#34;function-summary&#34;&gt;Function Summary&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#function-summary&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34;&gt;Function&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Lock&lt;/th&gt;
      &lt;th scope=&#34;col&#34;&gt;Use Case&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;bt_index_check(index, heapallindexed, checkunique)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;AccessShareLock&lt;/td&gt;
      &lt;td&gt;Routine production checks&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;bt_index_parent_check(index, heapallindexed, rootdescend, checkunique)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;ShareLock&lt;/td&gt;
      &lt;td&gt;Comprehensive verification&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;gin_index_check(index)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;AccessShareLock&lt;/td&gt;
      &lt;td&gt;GIN index verification&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;code&gt;verify_heapam(relation, on_error_stop, check_toast, skip, startblock, endblock)&lt;/code&gt;&lt;/td&gt;
      &lt;td&gt;AccessShareLock&lt;/td&gt;
      &lt;td&gt;Table/heap corruption detection&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;p&gt;All &lt;code&gt;amcheck&lt;/code&gt; errors are true positives. Use &lt;code&gt;REINDEX&lt;/code&gt; or point-in-time recovery for repair after diagnosing with &lt;code&gt;pageinspect&lt;/code&gt;.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>pg_surgery</title>
      <link>https://ext.pgsty.com/e/pg_surgery/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://ext.pgsty.com/e/pg_surgery/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/pgsurgery.html&#34;&gt;&lt;strong&gt;pg_surgery&lt;/strong&gt;&lt;/a&gt; : extension to perform surgery on a damaged relation&lt;/p&gt;
&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#overview&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;ID&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Extension&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Package&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Version&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;License&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Language&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;5990&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray&#34; href=&#34;https://www.postgresql.org/docs/current/pgsurgery.html&#34;&gt;pg_surgery&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_surgery&#34; title=&#34;Extension: pg_surgery&#34;&gt;pg_surgery&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;1.0&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--cate-admin pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/categories/admin/&#34; title=&#34;ADMIN — Administration&#34;&gt;&lt;i class=&#34;fa-solid fa-building&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;ADMIN&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--pgblue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/licenses/postgresql/&#34; title=&#34;Licence: PostgreSQL&#34;&gt;&lt;i class=&#34;fa-solid fa-scale-balanced&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34; href=&#34;https://ext.pgsty.com/languages/c/&#34; title=&#34;Implemented in C&#34;&gt;&lt;i class=&#34;fa-solid fa-code&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;C&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Attribute&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Binary&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has Library&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Need Load&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Has DDL&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Relocatable&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;Trusted&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;--s-d--&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--blue pgx-b--hued&#34;&gt;No&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued&#34;&gt;Yes&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--orange pgx-b--hued&#34;&gt;no&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Relationships&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;See Also&lt;/strong&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_catcheck&#34; title=&#34;Extension: pg_catcheck&#34;&gt;pg_catcheck&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_checksums&#34; title=&#34;Extension: pg_checksums&#34;&gt;pg_checksums&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/amcheck&#34; title=&#34;Extension: amcheck&#34;&gt;amcheck&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_orphaned&#34; title=&#34;Extension: pg_orphaned&#34;&gt;pg_orphaned&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_pathcheck&#34; title=&#34;Extension: pg_pathcheck&#34;&gt;pg_pathcheck&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pageinspect&#34; title=&#34;Extension: pageinspect&#34;&gt;pageinspect&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_repack&#34; title=&#34;Extension: pg_repack&#34;&gt;pg_repack&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/lo&#34; title=&#34;Extension: lo&#34;&gt;lo&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/lolor&#34; title=&#34;Extension: lolor&#34;&gt;lolor&lt;/a&gt; &lt;a class=&#34;pgx-b pgx-b--gray pgx-b--mono&#34; href=&#34;https://ext.pgsty.com/e/pg_isok&#34; title=&#34;Extension: pg_isok&#34;&gt;pg_isok&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;h2 id=&#34;packages&#34;&gt;Packages&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#packages&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;div class=&#34;td-table-scroll&#34; tabindex=&#34;0&#34; role=&#34;region&#34; aria-label=&#34;Scrollable table&#34;&gt;
&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG18&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG17&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG16&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG15&lt;/strong&gt;&lt;/th&gt;
      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;&lt;strong&gt;PG14&lt;/strong&gt;&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 18: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 17: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 16: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 15: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
      &lt;td style=&#34;text-align: center&#34;&gt;&lt;span class=&#34;pgx-b pgx-b--green pgx-b--hued pgx-b--mono&#34; title=&#34;PostgreSQL 14: version 1.0&#34;&gt;1.0&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;div class=&#34;td-callout td-callout--tip&#34; role=&#34;note&#34;&gt;
  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-lightbulb&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;This is a built-in contrib extension ship with the PostgreSQL kernel&lt;/span&gt;&lt;/div&gt;
  &lt;div class=&#34;td-callout__body&#34;&gt;

  &lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;install&#34;&gt;Install&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#install&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://ext.pgsty.com/usage/create&#34;&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/a&gt; this extension with:&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-a28b1280-fence-0&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-a28b1280-fence-0&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-a28b1280-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CREATE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EXTENSION&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pg_surgery&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#usage&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://www.postgresql.org/docs/current/pgsurgery.html&#34;&gt;pg_surgery: extension to perform surgery on a damaged relation&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The &lt;code&gt;pg_surgery&lt;/code&gt; extension provides functions to perform low-level surgery on damaged relations. These are last-resort tools that can corrupt data if misused.&lt;/p&gt;
&lt;h3 id=&#34;functions&#34;&gt;Functions&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#functions&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;h4 id=&#34;heap_force_kill&#34;&gt;heap_force_kill&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#heap_force_kill&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h4&gt;
&lt;p&gt;Marks line pointers as &amp;ldquo;dead&amp;rdquo; without examining the tuples, forcibly removing inaccessible tuples.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-a28b1280-fence-1&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-a28b1280-fence-1&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-a28b1280-fence-1-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;heap_force_kill&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;regclass&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tid&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[])&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;void&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-a28b1280-fence-2&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;10&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-a28b1280-fence-2&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-a28b1280-fence-2-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Tuple causes error when accessed
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ctid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;(0, 1)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- ERROR: could not access status of transaction 4007513275
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Force kill the problematic tuple
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;heap_force_kill&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;t1&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;regclass&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;ARRAY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;(0, 1)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tid&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[]);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Tuple is now removed
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ctid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;(0, 1)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- (0 rows)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h4 id=&#34;heap_force_freeze&#34;&gt;heap_force_freeze&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#heap_force_freeze&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h4&gt;
&lt;p&gt;Marks tuples as frozen without examining tuple data, making tuples accessible when visibility information is corrupted.&lt;/p&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-a28b1280-fence-3&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;1&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-a28b1280-fence-3&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-a28b1280-fence-3-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;heap_force_freeze&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;regclass&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tid&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[])&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;RETURNS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;void&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-a28b1280-fence-4&#34; data-td-code data-td-code-auto-id
     data-td-language=&#34;sql&#34; data-td-line-count=&#34;18&#34;&gt;&lt;div class=&#34;td-code__utilities td-code__utilities--compact&#34;&gt;
  &lt;button class=&#34;td-code__copy&#34; type=&#34;button&#34; hidden data-td-code-copy
          data-td-code-target=&#34;td-code-a28b1280-fence-4&#34; data-td-copy-mode=&#34;all&#34;
          data-td-label-copy=&#34;Copy code&#34;
          data-td-label-copied=&#34;Copied&#34;
          data-td-label-error=&#34;Copy failed&#34;
          aria-label=&#34;Copy code&#34; title=&#34;Copy code&#34;&gt;
    &lt;i class=&#34;fa-regular fa-copy&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;
  &lt;/button&gt;
&lt;/div&gt;
  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-a28b1280-fence-4-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- VACUUM fails on corrupted visibility info
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;VACUUM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- ERROR: found xmin 507 from before relfrozenxid 515
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Find the problematic tuple
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ctid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xmin&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;507&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;--  ctid
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- -------
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;--  (0,3)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Force freeze the tuple
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;heap_force_freeze&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;t1&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;regclass&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;ARRAY&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;(0, 3)&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]::&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tid&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[]);&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- Tuple is now frozen (xmin becomes 2 = FrozenTransactionId)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ctid&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t1&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;xmin&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;--  ctid
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;-- -------
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;--  (0,3)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;span class=&#34;visually-hidden&#34; role=&#34;status&#34; aria-live=&#34;polite&#34; data-td-code-status&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 id=&#34;when-to-use&#34;&gt;When to Use&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#when-to-use&#34; aria-label=&#34;Link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;heap_force_kill&lt;/code&gt;: When tuples cause errors on access due to corrupted transaction status, and the data can be discarded&lt;/li&gt;
&lt;li&gt;&lt;code&gt;heap_force_freeze&lt;/code&gt;: When VACUUM fails due to tuples with xmin before relfrozenxid, or when tuples are invisible due to corrupted visibility information&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These functions are unsafe by design and should only be used as a last resort when normal recovery methods have failed.&lt;/p&gt;

      </description>
    </item>
    
  </channel>
</rss>
