SELECT

SELECT 節は、ヒープ・ダンプから何を抽出するかを決定します。

オブジェクトを表示して出力参照を調べるには、アスタリスク (*) を使用します。例:

SELECT * FROM java.lang.String

特定の列の選択

あるいは、表示する列を選択することもできます。 例:

SELECT toString(s), s.count, s.value FROM java.lang.String s

結果テーブルは、基礎オブジェクトに関する情報を示す可能性があります。ポップアップ・メニューを使用すると、表示されている各オブジェクトのビューをさらに開くことができます。Java™ の属性およびオブジェクト・メソッドにアクセスするには、アットマーク (@) を使用します。

一般的な情報を取り出すためにいくつかの組み込み関数も用意されています。

SELECT toString(s), s.@usedHeapSize, s.@retainedHeapSize FROM java.lang.String s

使用可能な属性について詳しくは、『プロパティーへのアクセス』を参照してください。

列名の提供

列に名前を付けるには AS キーワードを使用します。

SELECT toString(s) AS Value, s.@usedHeapSize AS "Shallow Size", s.@retainedHeapSize 
AS "Retained Size" FROM java.lang.String s

選択によって保持された一連のオブジェクトを取得するには、AS RETAINED SET キーワードを使用します。

SELECT AS RETAINED SET * FROM java.lang.String

選択項目をフラット化してオブジェクト・リストにする

SELECT 節内の項目をオブジェクトとして解釈するには、OBJECTS キーワードを使用します。

SELECT OBJECTS dominators(s) FROM java.lang.String s

dominators() 関数は、オブジェクトの配列を返します。 したがって、この照会はオブジェクト・リストのリストを返します。 OBJECTS キーワードを使用することにより、OQL に、出力を圧縮してオブジェクトの単一リストを生成させることができます。

固有のオブジェクトの選択

固有のオブジェクトのみを選択するには、DISTINCT キーワードを使用します。
SELECT DISTINCT * FROM OBJECTS 0,1,1,2

選択した節の結果から固有のオブジェクトのみを選択するには、DISTINCT OBJECTS キーワードを使用します。

SELECT DISTINCT OBJECTS classof(s) FROM java.lang.String s

classof() 関数はクラス・オブジェクトを返します。 ただし、すべての Java ストリングは同じクラスを含んでいるため、SELECT classof(s) FROM java.lang.String s という照会を実行すると、Java ストリング内の行数と同数の行のリストが返されます。リストの各行には同じクラスが表示されます。

OBJECTS キーワードは、String オブジェクトとクラス・オブジェクトの表示値を含む基礎行を、classof() 関数の結果によって表されるオブジェクトに変換します。

変更の始まり

ストリング連結を含む式を使用できます。一部の式には括弧が必要になる場合があります。 例:
SELECT s.@objectId, (s.@objectId * 2), ("The object ID is " + @objectId) FROM OBJECTS 0,1,1,2 s 
注: この機能は、この製品の Web Edition では使用できません。
変更の終わり


© Copyright IBM Corporation 2011, 2015.
© Copyright 2008, 2015 SAP AG and others. 本製品では Eclipse テクノロジーが採用されています。詳しくは、http://www.eclipse.org を参照してください。