以下は、couchbase のサンプル ドキュメント ( userdetails ) です。
{
"friends": [
{
"company": "microsoft",
"firstname": "criss",
"lastname": "angel"
},
{
"company": "google",
"firstname": "captain",
"lastname": "america"
}
]}
「会社」をもとに、「名」と「姓」を変更したい
N1ql クエリ (単一パラメーター (firstname) を更新するため)
update default use keys "userdetails" set a.firstname="xyz" for a in friends when a.company="microsoft" end returning friends
上記のクエリは完全に機能します。
しかし、2つのパラメーター(名、姓)を更新するためのクエリを書くのに苦労しています
N1ql クエリ (2 つのパラメーターを更新する)
update default use keys "userdetails" set a.firstname="abc",a.lastname="xyz" for a in friends when a.company="microsoft" end returning friends
上記のクエリは、「姓」のみを更新しています。
出力
{
"friends": [
{
"company": "microsoft",
"firstname": "criss",
"lastname": "xyz"
},
{
"company": "google",
"firstname": "captain",
"lastname": "america"
}
]}