sql >> Databasteknik >  >> RDS >> PostgreSQL

Hur vet man vilken partition som kommer att användas i Postgres hashpartitionering?

Omvänd konstruktion av koden kan du få partitionsnumret med följande uttalande:

SELECT (hashtextextended('value', 8816678312871386365)::numeric + 5305509591434766563) % 8;

Ersätt 8 med antalet partitioner och 'value' med strängen i fråga.

Du kan testa partitionsnumret med satisfies_hash_partition . För att testa om 'value' skulle hamna i partition 6 av 8 i tabellen tab , du kan köra

SELECT satisfies_hash_partition('tab'::regclass, 8, 6, 'value'::text);



  1. Installera webbserver i Windows XP med Apache2, PHP5 och MySQL4 – Del 1

  2. Konvertera DateTime till formatet ÅÅÅÅ-MM-DD i SQL Server

  3. Hur man använder GROUP BY-sats i SQL

  4. Parameteriserad fråga i Oracle-problem