2012-07-27 100 views
1

现在我尝试使用sql连接算法(Nested loop join)来模拟在nosql中连接两个(或多个)表的操作。如何模拟sql连接?

如果我有两个表TableA和TableB,现在我想加入这些。首先,我将从这两个表中选择所有记录。并使用两个循环从TableA和TableB中查找满足连接条件的记录。

但现在我不能处理的连接上,条件是这样的:

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

我能转换复杂的联接,视情其cantains“(”或“)”到一个级别(像这样:TableA.id = TableB.id AND TableA.age = TableB.age OR TableA.name = TableB.name AND TableA.age = TableB.age)

回答

0

如果表很大,可以使用playOrm加入每个表的分区。如果表格很小,您可以在playOrm中使用连接。我假设你在谈论nosql。如果表格非常大,则需要使用map/reduce。 playOrm连接更适用于OLTP应用程序,该应用程序按月或客户端按帐户或分区进行分区,因此您可以拥有无​​限数量的客户端并只需查询您正在处理的客户端的分区。