2016-03-28 35 views
1

文檔我知道這是可以做到這樣說:參考目前正在更新

FOR user IN users 
FILTER user._key == "7" 
UPDATE user WITH { friends: PUSH(user.friends, "8") } IN users 

但它是一個有點冗長。我想知道是否有辦法做這樣的事情:

UPDATE "7" WITH { friends: PUSH(CURRENT.friends, "8") } IN users 

回答

0

你是對的;目前沒有簡單的方法來解決CURRENT文件時只更新一個項目。

人們可以使用DOCUMENT function再次獲取原始文檔:

UPDATE "7" WITH 
    { friends: PUSH(DOCUMENT("user/7").friends, "8") } IN users 

然而,這將兩次提取文檔,因此會比第一個查詢效率較低。

您可以使用db._explain()來重新驗證您的第一個查詢將是單個索引訪問。

I've added a feature request to track this.

更持續性與RETURN語法(如果)這個變量將被命名爲OLD