How do I decompose ctid into page and row numbers?
-
02-11-2019 - |
Question
Each row in a table has a system column ctid
of type tid
that represents the physical location of the row:
create table t(id serial); insert into t default values; insert into t default values;
select ctid , id from t;
ctid | id :---- | -: (0,1) | 1 (0,2) | 2
dbfiddle here
What's the best way of getting just the page number as from the ctid
in the most appropriate type (eg integer
, bigint
or numeric(1000,0)
)?
The only way I can think of is very ugly.
No correct solution
Licensed under: CC-BY-SA with attribution
Not affiliated with dba.stackexchange