2020年10月19日(月) 20:22 Ashutosh Bapat <ashutosh.bapat....@gmail.com>: > > On Sat, Oct 17, 2020 at 6:35 PM Ian Lawrence Barwick <barw...@gmail.com> > wrote: > > > > [doc] improve tableoid description > > > > Hi > > > > Attached patch aims to improve the description of the tableoid system > > column [1] > > by: > > > > - mentioning it's useful for determining table names for partitioned tables > > as > > well as for those in inheritance hierarchies > > This looks fine. > > > - mentioning the possibility of casting tableoid to regclass (which is > > simpler > > than the currently suggested join on pg_class, which is only needed if > > the schema name is absolutely required) > > Mentioning casting to regclass is worthwhile but it's not performance > efficient if there are many tableoids. In that case, joining with > pg_class.oid is quite efficient.
True. > That line further suggests using > regnamespace which is not as efficient as joining with > pg_namespace.oid. But pg_namespace won't have as many entries as > pg_class so casting to regnamespace might be fine. Should we suggest > both the methods somehow? On further reflection, I think trying to explain all that is going to end up as a mini-tutorial which is beyond the scope of the explanation of a column, so the existing reference to pg_class should be enough. Revised patch attached just mentioning partitioned tables. Regards Ian Barwick -- EnterpriseDB: https://www.enterprisedb.com
diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml index c4897d68c9..7b77e9ddfb 100644 --- a/doc/src/sgml/ddl.sgml +++ b/doc/src/sgml/ddl.sgml @@ -1144,7 +1144,8 @@ CREATE TABLE circles ( <para> The OID of the table containing this row. This column is - particularly handy for queries that select from inheritance + particularly handy for queries that select from partitioned + tables (see <xref linkend="ddl-partitioning"/>) or inheritance hierarchies (see <xref linkend="ddl-inherit"/>), since without it, it's difficult to tell which individual table a row came from. The <structfield>tableoid</structfield> can be joined against the