MySQL层次结构

标签 mysql

每个用户都可以说,每个 GROUP_A 有 3 个 GROUP_A,每个 GROUP_A 有 10 个 GROUP_B,每个 GROUP_B 有 20 个 GROUP_C。 20 个 GROUP_C 中的每一个都涉及大量插入/删除...并且对于所有 GROUP/用户来说,每一条数据都是唯一的。

我不是专家,但我已经做过研究,但目前这一切都是理论性的,而且我没有实际的实现经验,这是肯定的。我认为我的选项类似于“邻接列表”或“嵌套集”?

任何正确方向的指导将非常感激!

(我也在 DBA stackexchange 上发布了此内容,但如果我能从社区获得更多意见和帮助,我将非常感激!)

我知道简单的解决方案只是使用带有父“容器”外键的简单表,但我正在考虑长期的情况,如果有大约一百万个用户。

最佳答案

I know the trivial solution is just to have simple tables with foreign keys to the parent 'container' but I'm thinking about in the long term, in the event there's a million users or so.

我会采用这种方法。只要层次结构级别的数量保持固定,生成的方案就可能很好地扩展,因为它是如此微不足道。花哨的表结构和复杂的查询对于小型数据集可能足够有效,但对于大量数据,简单的结构效果最好。

如果级别数量可能有所不同,事情就会变得更加困难。如果您想为这种情况做好准备,您可以设计一种不同的方法,但如果数据量增加,这种方法可能会严重扩展。

关于MySQL层次结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16626149/

相关文章:

mysql - 根据另一个表中的行数填充表中的列

php - 使用PHP从数据库中检索多个图像

MySQL 每日总和

c# - SQL记录条目,不同的测试用例

php - WordPress像php mysql中的父子多级类别一样

PHPMYADMIN 上的 MYSQL - 创建表关系

mysql - Django DatetimeField 在更新时发生更改,值不正确

php - SQL 语法向我发送错误

Mysql 查询在服务器端执行时有效,但在客户端执行时无效

java - 在搜索功能中仅从名称中获取主题标签的相关值