如何将两个孩子添加到数据库中的父母

Posted

技术标签:

【中文标题】如何将两个孩子添加到数据库中的父母【英文标题】:how to add two children to a parent in database 【发布时间】:2015-02-01 21:38:49 【问题描述】:

我必须制作一个 php Web 应用程序,其中每个用户都可以添加 2 个其他用户。我会得到标记,如果这个用户添加了 3 个其他用户,那么添加他的原始用户将获得 +1 标记。所以正如您在此处看到的,我需要跟踪每个添加的用户以及添加的用户我知道那里是一个基于树的 sql 查询,但它不会解决问题,因为如果 a 添加了 b 和 c,我只能知道 b 是由 a 添加的,而 c 是由 a 添加的,但我在这里真正想要的是 a 添加了 b 和c 所以就像 b abd c 在一个由 a 添加的集合中,如果用户添加了另一对用户 c 让我们说 d 和 e 那么这对他们将被添加到由 a 添加的另一个集合中,所以什么是最好的到这一步?

更简单的解释: 让我们 aay 用户 a 添加了用户 b、c、d 和 e,然后我需要将这些添加的用户分成 2 组,每组仅包含 2 个用户,这样我就可以以您建议的任何方式查询用户 a我将得到的结果是:用户 a 在第 1 组中有两对 b 和 c,已满,第 2 组中的 d 和 e 用户已满,因此我将能够计算用户 a 以来的分数对于任何用户添加的每 2 个用户,添加他们的用户将获得 5 个标记,并且由于用户 a 添加了 2 个组,每个组包含 2 个用户,那么我为用户 a 标记添加 10 个标记,但是如果用户 b 添加了用户 f, g, h, q 那么用户 b 将获得 10 分,但用户 a 将仅获得 5 分,因为每个用户将为他添加的每个非直接用户获得 5 分(他们是由他添加的用户直接添加的)例如 f是由 a 非直接添加,但他是由 b 直接添加

【问题讨论】:

我试图清理问题,但我无法锻炼所说的内容。 (-1) 请不要添加 cmets 来澄清您的答案。请编辑问题,使其清楚 【参考方案1】:

不确定我是否理解您的问题,请尝试将其分解。一目了然,将一个名为“references”的 int 列添加到您的用户表中,并在创建行时将其设置为 0,为每个从该用户计算的用户递增,并使用一个函数来计算大于 2 的值。

【讨论】:

以上是关于如何将两个孩子添加到数据库中的父母的主要内容,如果未能解决你的问题,请参考以下文章

将孩子添加到父母后是不是必须调用 doLayout() 方法?

如何使用 PDO 从 PHP 中的单个 select 语句将孩子分配给父母?

如何将“委托”函数的参数传递给从孩子到父母的另一个函数?

如何使用reactjs解析从孩子到父母的数据?

React-Native '不能将没有 YogaNode 的孩子添加到没有测量功能的父母!

使用 EF 核心将多个关系数据添加到 SQL Server