更好的做法是保持数组项的独特性

时间:2015-04-13 08:06:04

标签: mongodb mongoid

我有一个字段activity的数组类型,

我需要为字段UNION多次activity次操作。

如何保持活动的项目彼此独特,不会重复。

我更喜欢高性能操作,因为我必须做十亿次这样的工作。

由于

print User.activity #["basketball", "baseball"]

User.activity =  (User.activity UNION ["football"])

# "football" should be inserted into activity
print User.activity
=> ["basketball", "baseball", "football"]

User.activity =  (User.activity UNION ["baseball"])

# it should be the same 
print User.activity
=> ["basketball", "baseball", "football"]

1 个答案:

答案 0 :(得分:0)

使用Set数据结构而不是Array。那里你不能有2个相同的对象。