빼기 집계 Mongo 문서 Golang

WBOY
풀어 주다: 2024-02-08 21:05:36
앞으로
1125명이 탐색했습니다.

减法聚合 Mongo 文档 Golang

PHP 편집자 Zimo가 오늘 빼기 집계 Mongo 문서 Golang을 소개하겠습니다. Golang 개발에서는 MongoDB를 데이터베이스로 사용하는 것이 매우 일반적인 선택입니다. MongoDB는 문서에 대해 다양하고 복잡한 집계 작업을 수행할 수 있는 강력한 집계 프레임워크를 제공합니다. 그 중 빼기 집계(Subtractive Aggregation)는 문서 내 특정 필드의 차이를 계산하는 데 사용할 수 있는 특수한 집계 작업입니다. 이 글에서는 빼기 집계를 사용하여 Golang에서 Mongo 문서를 처리하는 방법을 자세히 소개하여 개발자가 이 기능을 더 잘 이해하고 적용할 수 있도록 돕습니다.

질문 내용

나는 이 문서를 mongo로 가지고 있습니다

으아악

이 golang 코드를 사용하여 "test_value"를 1씩 감소시키고 싶습니다

으아악

이 오류가 발생했습니다

"문서를 mongo로 집계할 수 없습니다. 기본 유형을 bson 문서로 마샬링할 수 없습니다.writerarray는 요소 또는 값에 있지만 최상위 수준에 있는 경우에만 배열에 쓸 수 있습니다."

내가 뭘 잘못했나요?


정답


{
  "_id": {
    "$oid": "649d3d688a1f30bf82e77342"
  },
  "test_value": {
    "$numberlong": "10"
  }
}
로그인 후 복사

"test_value" 是一个文字。该表达式的意思是从字符串test_value中减去数字1,这是无效的,不是你想要的。您想改为引用字段路径。因此,您应该在其前面加上 $ 접두사가 있다는 점에 유의하세요(집계 표현식 참조). 수정된 코드는 다음과 같습니다.

으아악

ps 1:

다른 사람들이 문제를 더 쉽게 조사할 수 있도록 향후에 재현 가능한 최소한의 실행 파일을 제공하십시오. 예:

으아악

데이터 수집 초기화:

으아악

(mongodb 쉘에서 실행됨)

패키지 go.mongodb.org/<a href="/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="5e3331303931733a2c37283b2c1e286f706f6c706e">[电子邮件受保护]</a>mongo:5.0.8를 사용할 때 발생하는 오류는 다음과 같습니다.

으아악

ps 2:

모르는 경우 다음과 같이 bsond 변수를 직접 만들 수 있습니다.

으아악

ps 3:

표시하신 코드에 구문 오류(jsoninput 的简短声明末尾有一个额外的 ))。更正此错误后,我认为它不会导致您在问题中显示的错误。我相信错误是针对另一个 jsoninput값.

)가 있습니다.

위 내용은 빼기 집계 Mongo 문서 Golang의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:stackoverflow.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!