私は、列の型と長さのサイズを参照して、予想されるテーブルサイズを取得しています。私はこのためにpg_column_size
を使用しようとしています。pg_column_sizeはどのようにoctet_lengthよりも小さくすることができますか?
この関数をテストすると、この関数で何かが間違っているように見えました。
pg_column_size(...)
の結果値は、同じ文字列のoctet_length(...)
の戻り値よりも小さい場合があります。
数値の文字列には何もありません。
postgres=# \d+ t5
Table "public.t5"
Column | Type | Modifiers | Storage | Stats target | Description
--------+-------------------+-----------+----------+--------------+-------------
c1 | character varying | | extended | |
Has OIDs: no
postgres=# select pg_column_size(c1), octet_length(c1) as octet from t5;
pg_column_size | octet
----------------+-------
2 | 1
704 | 700
101 | 7000
903 | 77000
(4 rows)
これはバグですか?列の型と長さの値から予想されるテーブルサイズを計算するための数式を持つ人はいますか?
ありがとうございます... – KIM