是否可以使用 mongoimport 进行增量?

发布于 2024-11-30 19:24:00 字数 464 浏览 0 评论 0原文

我正在尝试使用 mongoimport 和保存在磁盘上的文件将 JSON 格式的数据导入到 MongoDB 集合中。这一切都工作得很好,但只要有可能使用 $inc 运算符的重复项,我就需要增加特定字段(“命中”1)。我该怎么做?是否可以?

文件中的示例记录如下所示:

{"date":"2011","loc":{"lon":"-95.3436","lat":"29.0335"},"hits":1}

我的导入语句如下:

mongoimport --host localhost --db tst --collection year --file y.json --upsert --upsertFields date,loc

我尝试使用/退出“--upsert”/“--upsertFields”,但这在这里没有帮助。

任何建议都将受到高度赞赏!

I am trying to import data in JSON format into a MongoDB collection using mongoimport and files saved on disk. This all works perfectly fine but I need to increment a specific field ("hits" by one) whenever there are duplicates possibly using the $inc operator. How do I do that? Is it possible?

A sample record from the file looks like this:

{"date":"2011","loc":{"lon":"-95.3436","lat":"29.0335"},"hits":1}

My import statement is as follows:

mongoimport --host localhost --db tst --collection year --file y.json --upsert --upsertFields date,loc

I have tried with/out "--upsert" / "--upsertFields" which does not help here.

Any advice is highly appreciated!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

完美的未来在梦里 2024-12-07 19:24:00

不,这对于 mongoimport 是不可能的,它只会导入传入的任何数据。您可以编写一个脚本来解析 JSON 文件并在导入之前进行修改;或者将其导入 Mongo,然后在数据进入数据库后构建一个查询来修改数据。

No, that isn't possible with mongoimport, it'll only import whatever data is passed in. You could write a script to parse your JSON files and make the modifications before importing; or import it into Mongo then build a query to modify the data once it's in the database.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文