Reputation: 751
I have document like below in couchbase.
{
"templateType": "EMAIL",
"displayName": "Email for user",
"structure": {
"{twitterLink}": "http://www.twitter.com/",
"{facebookLink}": "http://www.facebook.com",
"{instagramLink}": "http://instagram.com",
"{websiteLink}": "http://mavenir.com"
},
"backendPlaceholders": [
"{ACTIVATION_URL}",
"{USERNAME}"
]
}
I want to insert a new entry 'linkedIn' inside "structure" so that my doc will look like below,
{
"templateType": "EMAIL",
"displayName": "Email for user",
"structure": {
"{twitterLink}": "http://www.twitter.com/",
"{facebookLink}": "http://www.facebook.com",
"{instagramLink}": "http://instagram.com",
"{linkedIn}": "http://www.linkedin.com",
"{websiteLink}": "http://mavenir.com",
"{linkedIn}": "http://www.linkedin.com"
},
"backendPlaceholders": [
"{ACTIVATION_URL}",
"{USERNAME}"
]
}
May I know how to do it in N1QL ? The structure is not an array and it is a sub document. I am not sure how to do it in N1QL.
Upvotes: 1
Views: 358
Reputation: 7414
Use UPDATE statement
UPDATE default AS d
SET d.`structure`.`{linkedIn}` = "http://www.linkedin.com"
WHERE ....
Upvotes: 2