
baunceです。
とくに困っているわけではないのですが、ずっと気になって
いたのでここで質問させていただきます。
テーブルサイズを求める際に、USER_SEGMENTを参照して求めて
いる方があります。
この際、GROUP BY SEGMENT_NAME
と記載されている方が多いのですが、これは必要なのでしょうか。
USER_SEGMENTはSEGMENT_NAMEでユニークにはならないのでしょうか。
ちなみに私が携わっている環境ではGROUP BY してもしなくても
同じ結果となるようです。
以上よろしくお願いします。
No.1ベストアンサー
- 回答日時:
TABLEとINDEXで同じSEGMENT_NAMEの場合もあるので、SEGMENT_NAMEではユニークにならないです。
たぶんSELECTする際にはSEGMENT_TYPEを指定するのでしょうから、これで重複する事はあまり無いと思いますが。
上記以外でも、パーティション表の場合、
各パーティションのSEGMENT_NAMEは同一になり、PARTITION_NAMEにそれぞれのパーティション名が入るようです。
当方の環境は10g XEなので、パーティション機能を利用することは出来ないのですが、
DBA_SEGMENTSを見てみたらSYSAUX表領域にそのようなデータがあることが確認できました。
参考になれば幸いです。
yamada_gさん
ありがとうございます。
なるほどですね!
たしかにその通りですね。
念のために今回確認する際に偶然気づいたのですが、
テーブルをcreateしたばかりの時は、user_segmentsに
入っていないのですね。驚きです。
なにかしらデータをINSERTしたタイミングでuser_segmentsに含まれるみたいです。
さらには全件レコードをDELETEしてもTRUNCATEしても
一度user_segmentsに入った後は消えないようです。
何かの参考になりましたらと思い記載してみました。
最後に、お礼が遅くなって申し訳ありませんでした。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
データを削除しても表領域の使...
-
ORA-00959: 表領域'****'は...
-
Data Pump で大量データインポ...
-
データ削除の方法
-
表領域の使用率がもうすぐ100%
-
TruncateしたテーブルへのInser...
-
異なるスキーマからデータを抽...
-
グループ化したいのですが
-
DELETE文でFROM句を省略した場合
-
SQL*Loaderで、データを加工し...
-
Viewにインデックスは張れ...
-
object browser で処理を中断す...
-
datapumpの実行方法について
-
RDBのテーブル種類の違い
-
同じSELECT文同士でのデ...
-
postgreSQLのint型は桁数指定が...
-
特定のスキーマのテーブルを一...
-
SQLでスキーマ名(所有者名)の...
-
C#でaccdbファイルのテーブルの...
-
スキーマの削除、スキーマオブ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
データを削除しても表領域の使...
-
ORA-00959: 表領域'****'は...
-
Data Pump で大量データインポ...
-
TruncateしたテーブルへのInser...
-
表領域の使用率がもうすぐ100%
-
oracle SYSTEM01.DBF が大きい
-
Oracleはどの程度まで巨大なテ...
-
create table時のINITIALとMAXE...
-
データベースの初期サイズ
-
テーブルのSTORAGE句のサイズ設定
-
運用中のALTER TABLE
-
ORACLEでの領域計算
-
データ削除の方法
-
ディスクサイズの見積もりとは?
-
pgaの最大使用サイズについて
-
オーバーヘッドってなんですか?
-
dba_extentsの考え方について
-
INDEX 見積もりについて
-
表領域の違うEXPORT IMPORT
-
PROCのFETCH結果にごみが。。
おすすめ情報