在mysql中存储数据的最佳方法?

1 mysql performance

我有一个非常基本的问题,哪个是在我的数据库中存储数据的首选方法.

我有一个名为"users"的表,每个用户都获得了用户名和user_id.现在,我想创建一个名为"评论"的表,供用户评论新闻.

在注释中有一个名为"username"的列并存储登录用户的名称,或者有一个名为"user_id"的列是否更好?如果我使用user_id,我将不得不让我的sql语句有另一个select语句."(SELECT username FROM users WHERE users.id = comments.user_id)as username".似乎只需存储用户名,性能会更好.

我以为我读过以避免数据库中的重复数据.

哪个更好?

谢谢

Not*_*tMe 10

通常,您使用ID字段将表链接在一起.原因(在您的情况下)您可能允许此人更改其用户名,但您不想尝试更新所有位置...

因此,如您所示,将user_id放在评论表中并在联接上拉出用户名.