Database design 跟踪用户的喜好

Database design 跟踪用户的喜好,database-design,Database Design,以扎克伯格的“facemash”为例,在那里对照片进行了比较。现在,如果我为我的每个用户都有一个帐户,并且我在做同样的事情,用户喜欢许多不同的对中的一个或另一个。 现在在我使用的数据库中 用户\ ID用户\用户名用户\密码用户\名称 现在,我很难跟踪用户点击过的内容。 在我的例子中,我可能只有大约10对,所以我考虑在用户数据库中再添加10列,并通过添加1或0来跟踪每一对。 我知道这是一个非常粗糙的解决方案,但我也将有另一个数据库,它将有所有的条目,并保持该特定文件的所有喜欢的总和。 请告诉我正确

以扎克伯格的“facemash”为例,在那里对照片进行了比较。现在,如果我为我的每个用户都有一个帐户,并且我在做同样的事情,用户喜欢许多不同的对中的一个或另一个。 现在在我使用的数据库中 用户\ ID用户\用户名用户\密码用户\名称 现在,我很难跟踪用户点击过的内容。 在我的例子中,我可能只有大约10对,所以我考虑在用户数据库中再添加10列,并通过添加1或0来跟踪每一对。 我知道这是一个非常粗糙的解决方案,但我也将有另一个数据库,它将有所有的条目,并保持该特定文件的所有喜欢的总和。
请告诉我正确的方法?

我肯定会将这些信息保存在一个名为userlikes或类似的单独表格中。在用户ID上键入。每个可能的对可以单独列。如果需要空间,则将其设置为布尔值。

您应该为用户喜欢的项目创建一个新表,其中包含用户id和他们喜欢的项目的id。这在组织和可伸缩性方面都更好。如果以后您决定添加更多喜欢的内容,则可以更轻松地进行扩展