1

ここで、nosql で 2 つ (またはそれ以上) のテーブルを結合する操作をシミュレートするために、SQL 結合アルゴリズム ( Nested loop join ) を使用しようとしました。

TableA と TableB の 2 つのテーブルがある場合、これらを結合したいと思います。まず、これら 2 つのテーブルからすべてのレコードを SELECT します。そして、2 つのループを使用して、結合条件を満たす TableA と TableB からレコードを検索します。

しかし、今では次のような結合条件を処理できません。

(TableA.id = TableB.id OR TableA.name= TableB.name) AND TableA.age = TableB.age

「(」または「)」を含む複雑な結合条件を、 AND 、 OR のみを含む 1 レベルの結合条件に変換できますか? (このように: TableA.id = TableB.id AND TableA.age = TableB.age OR TableA.name= TableB.name AND TableA.age = TableB.age )

4

1 に答える 1

0

テーブルが大きい場合は、playOrmを使用して各テーブルのパーティションを結合できます。テーブルが小さい場合は、playOrmで結合を使用できます。私はあなたがnosqlについて話していると思います。テーブルが非常に大きい場合は、map/reduceを使用することをお勧めします。playOrm結合は、アカウントごと、月ごと、またはクライアントごとにパーティション化するOLTPアプリケーション向けであるため、無限の数のクライアントを使用して、処理しているクライアントのパーティションにクエリを実行できます。

于 2012-08-21T14:43:42.480 に答える