簡體   English   中英

Couchbase UPDATE是否不更新所有匹配篩選器的文檔?

[英]Couchbase UPDATE not updating all documents matching filter?

以下N1QL更新語句使我感到非常奇怪:

update  testBucket set A1='TESTVALUE' where TONUMBER(`Respondent.Serial`) = 8

{"results": []}



select А1 from testBucket where TONUMBER(`Respondent.Serial`) = 8

我得到以下內容(注意,並非所有內容都已更新):

      {
        "A1": "ONE"
      },
      {
        "A1": "TESTVALUE"
      },

      {
        "A1": "TESTVALUE"
      },
      {
        "A1": "TESTVALUE"
      },
      {
        "A1": "TESTVALUE"
      },
      {
        "A1": "TESTVALUE"
      },
      {
        "A1": "TEST2"
      }

問題可能是您在Respondent.Serial周圍使用反引號。

如果您的文檔結構是這樣,那是不對的。

{
  "Respondent": {
      "Serial": "8"
  }
}

僅當您有一個包含句點的字段名稱時,才應使用反引號,如下所示:

{
  "Respondent.Serial": "8"
}

假定您具有以前的文檔結構,請嘗試不帶反引號的查詢。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM