RethinkDB在单个请求中进行多个查询
我正在尝试在单个服务器请求中执行多个RQL命令,但我可能没有太大的成功。 我试过r.union
,但它只适用于序列。 我真正想要的是什么:
[r.db(..).table(..).get(id1).delete(), r.db(..).table(..).get(id2).delete(), r.db(..).table(..).insert(...)].run_all_at_once
有没有办法做到这一点?
谢谢!
你可以做
r.expr( [r.db(...).table(...).get(id1).delete(), r.db(...).table(...).get(id1).delete(), r.db(...).table(...).insert(...) ] ).run(conn)
请注意,方法delete不会获得参数。
你也可以用do
r.do( r.table('test').insert({value1: "Hey"}), r.table('test').insert({value2: "Ho"}) ).run(conn);
- 查询从最后到第一个进行评估
- 响应将是最后一个查询的结果