加入RethinkDB

时间:2017-07-28 06:09:08

标签: rethinkdb rethinkdb-javascript

如何加入多个条件并在Rethink-db中使用聚合函数

r.table("yourtable").get(id).innerJoin(
r.table("secondtable"),function (up, upp) {
      return user_profile("mID")
}).map({  
     uId: r.row("left")("userId"),
     mId: r.row("left")("memberId"),
     pId: r.row("right")("projectId"),      
     nodeId: r.row("right")("nodeId"),
     pri: r.row("right")("priority")
 })
 .min("priority");

3 个答案:

答案 0 :(得分:3)

    r.table("tblName1").get(id).innerJoin(
    r.table("tblName2"),
          function (tbl1, tbl2) {
               return tbl1("userId").eq(tbl2("userid"));
     })

答案 1 :(得分:1)

你可以尝试使用tblName1加入tblName2的地方。将userId作为映射键。注意它的内部加速度。

r.table("tblName1").get(id).innerJoin(
   r.table("tblName2"),
   function (tbl1, tbl2) {
   return tbl1("userId").eq(tbl2("userid"));
   }).zip()

此外,您可以检查所有sql的引用以重新here。 希望它有所帮助:)

答案 2 :(得分:1)

 .table("tblName1").innerJoin(
   r.table("tblName2"), function(tl, path){
     return tblName1("value").eq(path("value"));
   }
 ).map({nodeName:r.row("right")("value")   
   })