我正在计划一个rails数据库,我正在努力为数据库开发算法和结构。对象可以属于多个存储桶。对象0x01可以在B,D中的A,B,C和0x02中。如果我只查询一个对象,那么:
A = 1
B = 2
C = 1
D = 1
A&B = 2
A&C = 1
想要回归:
Total count in bucket A, B, C, D ... (separately)
Total count shared between A&B, B&C, C&D, A&C, A&D, ...
Total count shared between A&B&C, A&B&D, B&C&D ... (every combination).
我不想保存每个单独对象的特定值。
这是一种将数据保存在数据库中而不会以指数方式增长数据库的方法吗?我只想节省总数。
答案 0 :(得分:0)
我的朋友,你需要使用安静的计数器和嵌套循环。 例如,如果我想检查A& B的计数: for(A中的对象) for(B中的对象) 如果匹配,增加你的计数器。 希望这可以帮到你