微博是如何做到每次转发都会给之前的微博转发数+1呢,求个思路

比如A发了一篇微博,B转发了A的,C又转发了B的,此时A和B的转发数都+1了,这样子多重转发下来,我怎么设计数据库呢,求助啊

【1】数据库中字段最少需要有,微博ID,微博Path(文件存储微博内容),原文ID(非转发则为默认值),转发数,还有别的.......
【2】某次转发时有个点击事件,首先判断原文ID是否为默认值
【3】如果是默认值,则说明没有转发,,给当前字段转发数+1即可
【4】如果非默认值,则说明有转发,此时需要通过此微博ID查找原文ID,,,修改原文的转发数,,(假设此时原文ID为007)
【5】修改了原文的转发数,还没完,,还需要根据007搜索所有原文ID,并更新其转发数。(保证所有转发过该微博的全部修改。)

临时想的,,感觉我这个方法,,不管你如何转发,转发情况多复杂,,都能够很容易的应对,,

有问题还可以追问,,,,

大概思路是这样,

A发了一篇微博(001),转发数为0;
B转发了A的,这时候在001上,加加入B的引用,同时A的转发数+1,B的转发数为0;
C这时候又转发了B的,这时候001上,加入C的引用,同时B的转发数+1.

数据库里面每条微博设置两个字段 当前转发数CU 和转发来源FA 比如A(CU:1,FA:NULL) B是转发的A的 B(CU:0,FA:A)
那么C转发B的时候 你先去更新B的CU值 然后看有没有FA 如果有 那么更新 A的CU 一次类推 如果A也是转发的话
谢谢

首先,价格字段count(转发量)
给转发的URL上加个秘钥(比如:share = 时间戳 + ID),每次转发时,根据share查找相关数据库,并给count+1

设置parentId,原创微博,parentId为空,B转发后,B的parentId为A,C转发后parentId也为A,每次点击转发后,查出所有parentId为A的数据,
即从A处转发的微博,再加上A本身,所有的转发数加一。

谢谢楼上各位的解答,结合大家的思路,我现在的想法是:
1,多加一个字段,转发的时候把之前涉及到的id都存起来,页面不显示,要查转发详情之类的就用这个字段查
2,多加一张表,C转了B的文章,就存C转了B,C转了A两条记录
貌似可行的样子,不知道哪个更合适

我是个菜鸟,只是我的想法,如果不对或者对你没有帮助还请见谅图片说明