這是我更新的文檔,當我第一次執行查詢結果是Result1,再次執行查詢一次結果是Result2。N1ql查詢Array_Append控件退出元素
查詢:
UPDATE默認爲d SET e.contact = ARRAY_APPEND(e.contact,{ 「電子郵件」: 「[email protected]」, 「手機」:9876655555}) FOR E在d .details WHEN e.id = 1234 END WHERE META()。id =「k01」;
結果1:
"k01":
{
"details": [
{
"id": 1234,
"city": "Medway",
"country": "United Kingdom",
"name": "Medway Youth Hostel",
"url": "http://www.yha.org.uk",
"contact": [
{
"email": "[email protected]",
"phone": 6789435634
}
]
}]
}
結果2:
"k01":
{
"details": [
{
"id": 1234,
"city": "Medway",
"country": "United Kingdom",
"name": "Medway Youth Hostel",
"url": "http://www.yha.org.uk",
"contact": [
{
"email": "[email protected]",
"phone": 6789435634
},
{
"email": "[email protected]",
"phone": 6789435634
}
]
}]
}
如何可以控制重複的值,當我執行用於第二次用相同values.Everytime字段查詢與相同的值插入不管元素是否存在。請建議我(查詢)。因此,不會有重複的追加
如果我拿出電話號碼,它會在文檔中再次追加重複值,當我執行查詢1和查詢3時:UPDATE默認AS d SET e.contact = ARRAY_APPEND(e.contact,{「email」:「sri123 @ gmail.com「,」phone「:9876655555})FOR e IN d.details WHEN e.id = 1234 END WHERE META()。id =」k01「AND ANY e IN d.details SATISFIES e.id = 1234 AND {「email」:「[email protected]」}不在e.contact END; – Raj
重複檢查整個文件或字段上。如果您需要檢查電子郵件更改條件。滿意e.id = 1234 AND AND「[email protected]」不在e.contact [*]。電子郵件結束 – vsr