3

多次元オブジェクトのコレクションがあります(例class Person = {age : int , height : int, weight : int etc...})。一部のディメンションが固定され、残りが指定されていないクエリでコレクションをクエリする必要があります (たとえばgetallPersonWith {age = c , height = a}、またはgetAllPersonWith {weigth = d}...)

現在、{age, Height,...}(たとえば、固定できるすべてのディメンション)のマルチマップがList : Personあります。クエリを実行するには、最初にクエリを検証するキーのセットを計算し、マップから対応するリストをマージします。クエリの速度に関して、より良いものはありますか? 特に、ディメンションごとに1つのソートされたリストを使用することに近いものはありますか(これが最速のソリューションであると信じていますが、管理が面倒です:))

明確にするために、私はSQLクエリを探していません。

4

2 に答える 2

3

目的のために、 http ://code.google.com/p/cqengine/ をご覧ください。

あなたを正しい方向に導くはずです

于 2012-09-15T08:01:55.797 に答える
0

次のような意味です。

SELECT * FROM person p
WHERE gender = 'F'
  AND age >=18
  AND age < 30
  AND weight > 60 -- metric measures here !!
  AND weight < 70
  AND NOT EXISTS (
    SELECT * from couple c
    WHERE c.one = p.id OR c.two=p.id
    );

なぜ私が SQL を使っていると思いますか?

于 2012-09-13T22:26:52.183 に答える