我是 Swift/CoreData 和 SQl 数据库的新手。我有一个包含 7000 多个项目的 CoreDatabase。我想创建一个实体(或任何其他方式)来存储数据库中某个条目的使用频率。我需要这个来创建建议某些条目的加权排序算法。
问题是我不想将其存储在条目本身上,它们需要保持通用,以便我能够通过我自己的节点服务器时不时地更新它们。所以所有用户都有相同的数据库。每当用户选择其中一项时,计数器就会加一。每当我查询一个项目时,频率应该随之而来,这样我就可以对其执行排序算法。
我一直在阅读文章,似乎可以做到这一点,但到目前为止还没有真正有用的。我也看过有关此的 SQLite 文章,但没有找到我要找的东西。
我正在思考以下问题:
FrequencyList { Item_1 { ...7000 items....
item_1_freq : 0, ------------> frequency : 0,
item_2_freq : 12, name: "lala"
item_3_freq : 3 ...
... };
...
7000?!?!
};
或者与其各自的项目处于一对一关系的单独“元”实体是否是一个好的解决方案?
我该如何解决这个问题?
最佳答案
在核心数据中,这样可能会更好:
将选择内容放入具有 count
属性的实体中,并在选择内容和项目之间建立关系。 Selection
--> Item
关系可以是一对一或多对多,具体取决于您的需要;我这里有很多这样的东西,但对你来说这可能不是最好的。
如果您想获取 Item
的选择数,请使用 selection.count
的值。发生选择时更新 selection.count
。
关于swift - CoreData 共享实体属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53885324/