2015-04-27 50 views
2

RethinkDB插入數據我有一個表A和表B.與關係

表B具有帶有與密鑰a_id的關係。

我已經創建的文檔中的表A 我不知道如何與外鍵A.表B中使用DOC

r.db('DB').table('B').insert([{ 
    'b_data': ..., 
    'a_id': r.db('DB').table('a').filter(r.row['name'] == 'some_name') 
} for p in a]).run(conn) 

回答

2

你是在一個單一的查詢插入數據正確的軌道,但是ReQL與SQL的邏輯不同,因爲它通常更像一個流程。所以你的查詢需要從數據源開始,以便它可以流入插入部分。所以這裏是我認爲你想要的一個版本(以Python格式):

r.db('DB').table('a').filter({'name':'some_name}).for_each(
    r.db('DB').table('b').insert(
     {'name':r.row['name'],'b_data':'something'} 
    ) 
).run(conn)