1

これは簡単な質問かもしれませんが、私は混乱しています、助けてください.....

OrientDB 2.1.9 を使用しており、VehicleHistoryGraph データベースを試しています。Studio のブラウズ モードから、制限を 9 レコードのみに設定します。今、私はこの簡単なクエリを入力しています

select out() from Person

返された結果セットは 9 件のレコードですが、車両を購入したのは 2 件だけです。残りは空のコレクションで表示されます []。これはダメだ、困った。エッジのコレクションを持つ 2 つの頂点のみが返されることを期待しています。

何かを購入したこの 2 人を取り戻すにはどうすればよいですか? select にこのアンワインド オペレータがあることにも気付きました。その場合、これは役に立ちますか、例を挙げていただけますか?

4

1 に答える 1

1

クエリは out() を要求するため、すべてのケースで out() が計算され、結果が表示されます。out().size() > 0 の行のみが必要な場合は、次のようなクエリを作成できます。

select out() from v let n=out().size() where $n > 0

これをもっと簡潔に書くことができるはずだと思うなら、例えば次のように:

select out() as n from v where n > 0

その後、クラブに参加します (例:この拡張要求をサポートすることにより)。

(select out() from v where out().size() > 0はサポートされています。)

于 2016-01-23T06:34:02.150 に答える