gpt4 book ai didi

MySQL 分为两个表或将所有内容保留在一个表中

转载 作者:行者123 更新时间:2023-11-29 19:15:12 24 4
gpt4 key购买 nike

我目前有一个通用的 Users 表,其中包含以下列

user_id
first_name
last_name
join_date
last_active
email
password
rank
status

一些用户(排名= 3的用户)会提供一些额外的信息,如电话号码、辅助电子邮件、生日等(共15个字段)。我想知道是否应该在此表上添加这些列,或者是否应该创建另一个表并使用 user_id 与 Users 表连接。像这样的事情:

user_id
all new columns

哪一个是最好的选择?

最佳答案

两个表的方法是可行的。

要从两个表中获取所有列:

SELECT t1.*, t2.*
FROM t1
LEFT JOIN t2 USING(user_id);

我假设 t2 中的行有时会丢失,但您希望获取该行,并使用 NULL 来表示丢失的数据 - 因此 LEFT JOIN

当然,如果您知道不需要 t2,则不要执行 JOIN。但总是进行 JOIN 并没有什么坏处,除了一点点性能之外。

这是“最佳选择”吗?如果不了解更多关于您的系统的信息,这很难说。但是,根据您提到的信息,这似乎是一个“不错”的选择。

关于MySQL 分为两个表或将所有内容保留在一个表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42767827/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com