0

jhat OQL where句で接続詞[AND]を実行するにはどうすればよいですか?

私はこれをしたい:

select s from sun.security.x509.X500Name s where  s.canonicalDn !=null and    
/tiberium/(s.canonicalDn.toString())

つまり、canonicaldnでappTrustを含むすべてのX500Nameを検索したいと思います。canonicaldnの一部がnullになる可能性があるため、nullチェックが必要です[その場合、jhatはtoStringでnullポインター例外をスローします]。

しかし、リテラルの「and」は機能しません。

ところで、私はフィルター関数を使用して私の目的のためにこれを回避しました:

select filter(heap.objects("sun.security.x509.X500Name"), isTiberium);

function isTiberium(s) {  
    return s.canonicalDn !=null && /tiberium/(s.canonicalDn.toString());  
}
4

1 に答える 1

1

「and」は&&であることがわかりました。これは、JavaScriptと演算子です。つまり、正しい式は次のとおりです。

select s from sun.security.x509.X500Name s where  s.canonicalDn !=null &&    
/tiberium/(s.canonicalDn.toString())
于 2012-01-12T11:20:53.863 に答える